第三章jsp辨析.pptVIP

  • 2
  • 0
  • 约 48页
  • 2017-06-18 发布于湖北
  • 举报
第三章 JSP语法 理解翻译过程 之 遵循规则的影响三 JSP页面生命周期 使用条件和循环语句二 脚本就是用来处理业务逻辑,最常用的逻辑无非条件语句和循环语句。 容易犯的错误 翻译后 正确写法 循环语句 第三章 JSP语法 理解翻译过程 之 遵循规则的影响四 JSP页面生命周期 使用请求时属性表达式 用于这种方式传值给动作属性的表达式,称为请求时属性表达式。 % String pageURL = copyright.html; % jsp:include page=%= pageURL % / 在这种情况下,表达式%=pageURL%不再输出,而是在请求时把值传到jsp:include动作的page属性中。 %! String bSize = 32kb; String pageUrl = copyright.html; % %@ page buffer=%= bSize % % %@ include file=%= pageUrl % % 必须牢记的是: 这种请求时提供值的机制不能套用到指令集。 为什么呢?指令集只有翻译时的语义,这也就意味着JSP引擎只有在页面翻译时用得到指令集。 所以下面是非法的使用: 第三章 JSP语法 理解翻译过程 之 遵循规则的影响五 使用转义字符序列 正如其它任何编程语言,JSP脚本语言也有一些用于JSP引擎分析的关键字符。这些字符包括: 单引号,双引号,反斜杠,还有字符序列%@, %!, %= , %, %, %--,和--%。如果需要把这些字符当作普通字符来使用,需要在其前面加上反斜杠,以便告诉分析器不是特殊字符。 分几种情况: 在模板文本中 在脚本元素中 在属性中 不被浏览器正确解释的标签,可以使用其ascii码 JSP页面生命周期 第三章 JSP语法 理解翻译过程 之 遵循规则的影响五 使用转义字符序列 在模板文本中 JSP中所有的脚本元素都是以%字符作为标签开始的—声明(%!),脚本(%)和表达式(%=),JSP分析器就会寻找字符序列%作为JSP标签的开始,所以,在文本中使用%就得使用反斜杠(\)来避免与字符%关键字符冲突。 JSP页面生命周期 htmlbody The opening tag of a scriptlet is \% The closing tag of a scriptlet is % /body/html 既然是文本了,JSP引擎还会分析%吗? 当然不会。Out.write()出来 第三章 JSP语法 理解翻译过程 之 遵循规则的影响五 使用转义字符序列 在脚本元素中 所有的脚本元素都必须以%标签结束。一旦读到标签头,分析器就会寻找%作为结束标签。如果想在脚本元素中显示%就得使用\来转义 JSP页面生命周期 htmlbody %= The opening tag of a scriptlet is % % %= The closing tag of a scriptlet is %\ % /body/html 同样的%并没有使用转义字符,因为它已经在分析器的表达式中的中间了。Out.print ()出来 第三章 JSP语法 理解翻译过程 之 遵循规则的影响五 使用转义字符序列 在属性中 在属性中使用这些关键字符,都得进行转义 JSP页面生命周期 %@ page info=A sample use of , \, \\, \%, and %\ characters. % htmlbody %= getServletInfo() % /body/html 对于使用单引号来写属性的值,则要对单引号进行转义 %@ page info=A sample use of \, , \\, \%, and %\ characters. % X jsp:include page=%= copyright.html % / jsp:include page=%= copyright.html % / √ jsp:include page=%= \copyright.html\ % / √ 修正为: 第三章 JSP语法 理解翻译过程 之 遵循规则的影响五 使用转义字符序列 不被浏览器正确解释的标签,可以使用其ascii码 不被浏览器正确解释的标签,可以使用其ascii码 ,同样可以进行转义 ,对于任何一个关键字符都适用。 JSP页面生命周期 htmlbody The opening tag of a scriptlet is lt;% The closing tag of a scriptlet is %gt; /body/html 同样也可以避免与关键字符(任何)的冲突 第三章 

文档评论(0)

1亿VIP精品文档

相关文档