- 1、本文档共42页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2007-8-17 Java Web开发技术 20007-8-17 Java Web开发技术 第6章 简单的表达式 第六章 简单的表达式 6.1表达式语言简介 6.2表达式语言语法 6.3 EL中的隐含对象 6.4 小结 6.1表达式语言简介 6.1.1 EL用于静态文本 6.1.2 EL用于动态文本 6.1表达式语言简介 表达式语言(EL)是由Java社区组织(JCP,Java Community Process)的JSP标准标签库专家组和JSP 2.0 专家组共同开发。可以用于JSP页面中的HTML标记,也可以用于JSP的特有标记。 只要是支持Servlet2.4 / JSP2.0的Web容器,都可以在JSP网页中直接使用EL。 6.1表达式语言简介 EL语法结构: ${EL expression} 所有EL都是以 ${ 为起始、以 } 为结尾, EL expression为指定表达式。如:${sessionScope.user.sex},意思是:从Session范围中取得用户性别。 EL的语法比传统JSP脚本更为方便、简洁。 6.1.1 EL用于静态文本 在课本例exa6_1.jsp中静态文本H2中包含一个EL表达式${12.5e4},exa6_1.jsp: htmlbody h2商品价格是 ${12.5E4}./h2 The value of 2 plus 5 is: h1${2 + 5}/h1 /bodyhtml 例 exa6_1.jsp运行结果见课本图6-2所示 6.1.1 EL用于静态文本(续) 2. ${${}},如果在EL表达式中出现${${},则EL表达式输出“${”,并把“}”后面的表达式看成字符串输出。 6.1.1 EL用于静态文本(续) 禁用EL表达式的问题: “${”和“}”成为EL表达式专用符号。但有时可能不需要它们作为EL表达式专用符号,而是作为一般符号。这时需要使用 %@ page isELIgnored=“true” %禁用EL表达式。 6.1.1 EL用于静态文本(续) isELIgnored属性的默认值随着Web服务器的不同版本而不同,本书用的Tomcat 5.0.28默认为“false”。 课本例exa6_3.jsp中isELIgnored属性为“false”或设为默认值的运行结果见课本图6-5所示,禁用的运行结果见课本图6-6所示。 6.1.1 EL用于静态文本(续) exa6_3.jsp关键代码: %@page isELIgnored=false % h1启用/禁用表达式语言/h1 form method=post action=expressionexample.jsp b ${名字: }input type=text value=${请输入您的名字}/ /bbr / b ${姓氏: }input type=text value=${请输入您的姓氏}/ /bbr / input type=submit name=Submit value=${提交表单} input type=reset value=${重置表单} /form 6.1.2 EL用于动态文本 动态文本简介: EL表达式可以用作标准标记和用户自定义标记的属性值,帮助显示页面上的动态内容,也可以和一些标记,如jsp:useBean、jsp:include、jsp:forward等结合使用 6.1.2 EL用于动态文本(续) 课本例exa6_4.jsp中使用jsp:useBean标准动作创建一个JavaBean,然后使用EL表达式读出Bean的属性值。运行结果见课本图6-7所示。 6.2表达式语言语法 6.2.1 .与[ ]运算符 6.2.2 EL中的变量 6.2.3 EL中的符号常量 6.2.4 EL中的保留字 6.2.5 EL中的运算符 6.2.6 EL中的函数 6.2.1 .与[ ]运算符 EL提供 . 和 [ ] 两种运算符来存取数据。以下两种情况两者会有差异: (1)当要存取的属性名称中包含一些特殊字符,如 . 或 — 等,就一定要使用 [ ]。 (2)需要动态取值时,要用 [ ] ,因为 . 无法做到动态取值。 6.2.1 .与[ ]运算符(续) [ ] 运算符的意义 :假设有一个 EL:${A[B]} (1)当A的值为null时,它会回传null。 (2)当B的值为null时,它会回传null。 (3)当A的值为Map
文档评论(0)