第11讲 EL表达式.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第11讲 EL表达式

EL表达式 EL 简介 EL 全名为Expression Language,它原本是JSTL 1.0为方便存取数据所自定义的语言。当时EL只能在JSTL 标签中使用,如下: c:out value=${ 3 + 7} 程序执行结果为10。但是你却不能直接在JSP 网页中使用: pHi ! ${ username }/p 到了JSP 2.0 之后,EL 已经正式纳入成为标准规范之一。因此,只要是支持Servlet 2.4 / JSP2.0 的Container,就都可以在JSP 网页中直接使用EL 了。 除了JSP 2.0 建议使用EL 之外,JavaServer Faces( JSR-127 ) 也考虑将EL 纳入规范,由此可知,EL 如今已经是一项成熟、标准的技术。 假若您所用的Container 只支持Servlet 2.3/JSP 1.2,如:Tomcat 4.1.29,您就不能在JSP 网页中直接使用EL,必须安装支持Servlet 2.4 / JSP 2.0 的Container 7.1 EL表达式语言 EL与EL隐含对象 EL的全称是表达式语言(Expression Language,EL),它是JSP2.0新增加的技术规范。引入EL表达式语言目的之一是为JSP页面计算、访问和打印数据提供方便,尽可能减少JSP页面中的Java代码,使JSP页面更简洁、更易于开发和维护。 1、EL表达式的基本语法 EL表达式语言的基本语法为: ${表达式} EL表达式可以写在HTML标记的标记体内,也可以写标记属性值内。 2、EL表达式中的常量和变量 EL表达中数值常量直接书写,例如${3+5}。 3、 .与 [ ] 运算符 EL 提供 . 和 [ ] 两种运算符来存取数据。下列两者所代表的意思是一样的: ${sessionScope.user.sex} 等于 ${sessionScope.user[sex]} . 和 [ ] 也可以同时混合使用,如下: ${sessionScope.shoppingCart[0].price} 回传结果为shoppingCart中第一项物品的价格。 不过,以下两种情况,两者会有差异: (1) 当要存取的属性名称中包含一些特殊字符,如 . 或 – 等并非字母或数字的符号,就一定要使用 [ ],例如: ${user.My-Name } 上述是不正确的方式,应当改为: ${user[My-Name] } (2) 我们来考虑下列情况: ${sessionScope.user[data]} 此时,data 是一个变量,假若data的值为sex时,那上述的例子等于${sessionScope.user.sex}; 假若data 的值为“name”时,它就等于${sessionScope.user.name}。因此,如果要动态取值时,就可以用上述的方法来做, 但 . 无法做到动态取值。 EL隐含对象 EL表达式定义了11个隐含对象来方便读取JSP环境中的数据。 读取JSP作用范围变量的EL隐含对象 JSP中与作用范围有关的隐含对象是pageContext、request、session和application,EL读取这些范围内的变量时,用到的EL隐含对象有:pageScope、requestScope、sessionScope和applicationScope 例如: % session.setAttribute(aa,bb); application.setAttribute(cc,dd); % ${sessionScope.aa} ${applicationScope.cc} 读取request请求报头的EL隐含对象 在EL表达式中要读取request请求报头中的信息,使用到的隐含对象有:header、headerValues。 读取cookie的EL隐含对象 读取客户端的一个cookies对象,要用到EL隐含对象cookie。 读取客户端表单或查询串参数的EL隐含对象 要读取客户端表单或查询串中的参数值,用到的EL隐含对象为param或paramValues。 读取上下文初始化参数的EL隐含对象 用initParam隐含对象读取上下文初始化参数。 5、EL运算符 EL表达式中可使用的运算符有:算术算符、关系算符、逻辑算符。 (1)算术算符 主要有+、-、*、/、%、(),算符的含义和用法基本同Java语言。例如: body ${3+(8*4)} /body (2)关系算符 主要有:(大于)、(小于)、=(小于等于)、=(大于等于)、==(等于)、!=(不等于),算符的含义和用法基本同Java语言,例如: body ${75} /body (3)逻辑算符 主要

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档