11月2日JSP培训日记

来源:互联网 发布:淘宝大学装修视频教程 编辑:程序博客网 时间:2024/05/16 00:56

参照《深入Java Web开发内幕》,给大家过了一遍JSP中的更多语法细节,包括如下内容:
out对象的工作原理,通过两个有趣的实验来帮助大家区分JSP页面的缓存与Servlet引擎缓存的区别。
pageContext对象的详细讲解,特别是要注意其中的findAttribute方法,以及pushBody与popBody的工作原理,我想到了以后写SAX的例子时,可以参照自定义标签的pushBody与popBody的工作原理,每个标签都有自己的上下文:
<a>...........<b>...............</b>.........</a>
   out(a上下文)    out(b上下文)     out(a上下文)
out全局变量指向的上下文要能自动调整
JSP中个各种标准标签(即标准行为元素):<jsp:include>标签、<jsp:forward>标签、<jsp:param>标签、<jsp:plugin>标签、脚本元素标签、指令标签、<jsp:text>标签、完全使用标签编写JSP页面。<jsp:scriptlet> code </jsp:scriptlet>要注意用<![CDATA[ ]]>
JSP中文乱码问题:JSP中文乱码的根源、JSP引擎翻译JSP页面时的中文乱码问题、静态引入时的中文乱码问题、<jsp:param>标签传递中文参数时的问题
接着讲解了JavaBean的Indexed属性、JavaBean在JSP中的应用、用模式一实现用户登录功能、用模式二实现用户注册功能 

今天讲解有比较有特色的地方:
对于<%@ include file%>,如果a.jsp引入b.jsp,a.jsp会受到b.jsp中的JSP指令的影响,例如,b.jsp中有一个isELIgnored指令,会影响a.jsp。<%@ include file%>不仅仅是引入输出内容,还可以引入共同的翻译指令元素,其作用有点类似c语言中的include。

对于<jsp:include page%>,如果a.jsp,b.jsp,c.jsp,d.jsp...等页面的布局完全一样,页头与左侧的导航栏完全一样,用静态引入可以重用页头与导航栏,但是页面布局的表格能重用吗?这要用动态引入<jsp:include page>,sitemesh框架用的就是这种技术。

虽然jsp的功能非常强大,但我们只需要把jsp页面当作一种模版技术来使用,尽量不要使用其他功能。

 

原创粉丝点击