前言

前一段时间写了很多多少Servlet和JSP相关{的}博客,“自以为明”了{的}差不多了,岂不知人外有人,天外有天,代码外另有源码,受高人点拨,看了一下Servlet源码,【感想颇深】,再也不敢说懂了,不明了生涯{的}本质,‘你永远活在梦里’。固然,只代表小我私家一点心得,若是有大佬途经,还望海涵,菜鸟还在路上。

吃一堑长一智

为什么那些大佬那么牛逼,不为什么,就是由于他们比别人多问了些为什么。看着感受像绕口令一样,实在生涯就是这样,透过本质看天下,实在。。。。。。。。。也就那么回事。

今天受先生点播,明了了一些知识和人生原理,惋惜小生才疏学浅,只是明了了一些皮毛,但这些皮毛若无人点拨,我何以学编程,何以成事业,照样那句话,“读万卷书不如行万里路,行万里路不如有高人指路,高人指路还需自己顿悟”, 对[自己做好定位,{在提高中渡}过每一天,【信赖】生涯照样很美妙{的}。

走进编程,看看为什么

这段时间学了Servlet和JSP,做到了应用层,但没有做深入研究, 对[Servlet{的}吸收请求和响应处置,Servlet{的}ServletContext域工具{的}使用,以及页面{的}转发和重定向{的}使用做了一些案例,厥后学JSP,学了JSP中种种语法声明,标签引入,剧本语法,内置工具等,连系JSP+JavaBean模式和JSP+Servlet+JavaBean(MVC)模式做了一些案例应用。虽然 对[这些知识点会用了,但我以为应该转换一下『头脑』,应该先提出为什么,有了『问题』之后查询并解决『问题』。

比如说:

为什么说JSP是Servlet?

为什么JSP中有内置工具,不用实例化就能使用?

为什么<%! %>《中写》声明 、 <% %>中写逻辑代码片断 、 <%=%>中写表达式?

为什么要用EL表达式和JSTL?

为什么JSP使用{的}人越来越少?

为什么。。。。。。。。。。。。?

『头脑』决议高度

『先说为什么』说JSP是Servlet,不注释,看源码就知道了。之前做{的}很多多少案例用{的}案例都是IDEA,这次用Myeclipse演示,固然换工具是有缘故原由{的},(利)便查看源码。

首先,找到你{的}tomcat安装包,在安装包中{的}work文件夹下找到你{的}Web项目,再找到如下图所示{的}源文件。

在Web项目中{的}index.jsp上我写了如下图所示{的}代码,考察这些剧本语句在类中{的}位置

我在这形貌一下,然后你再 对[应着图去看

首先看声明

声明{的}位置泛起在类体中,它是一个成员变量,有默认值,以是不赋值也能直接输出。

再看代码片断和输出表达式

代码片断在一个方法体中,以是<%%>代表方法体,而<%=i%>相当于out.print(i );,我想 对[应到这,应该能看明了点什么吧,另有那些内置工具,都封装到了类中,以是你在JSP中使用{的}时刻能直接使用不用去实例化工具。以是说,JSP就是Servlet类,『你若是明了原理』,〖 对[〗应于类中,(学起来就不会那)么难了(至少我是这样以为{的})。

明了这些再看,JSP中写那些代码片断{的}时刻,是不是感受很贫苦, 对[,确实很贫苦,这时刻就泛起了一个叫JSTL{的}器械,它简化了在JSP中Java片断{的}誊写,用一些标签就能实现一些庞大{的}功效,然则这个器械是别人封装{的},你虽然会用,但终究是别人{的},若是你以为不服气,你也可以自定义标签,自己封装一个标签库,在JSP中快速开发,之前JSP很火{的}时刻许多公司都有自己{的}标签库, 对[,很火{的}时刻,那现在为什么JSP不火了呢?按我{的}明了,应该是现在有种种端口,安卓端,移动端,等等,用{的}多{的}是前后端星散开发, 对[JSP{的}剖析太局限,不像JSON,任何端口中都能剖析。。。。。。。。。。。点到为止吧,在这只是听说,不敢自己瞎说了,怕误导别人,若是有大佬途经,求指教。

竣事

此篇让你先从类{的}角度熟悉JSP, 对[JSP多一些明了,下篇我会说到JSTL和自定义标签,欲知后篇若何,请看下回解说。