网站大量收购闲置独家精品文档,联系QQ:2885784924

JSP Servlet技术详解 之EL表达式语言.doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
JSP Servlet技术详解 之EL表达式语言

JSP Servlet技术详解 之EL表达式语言 JSP/Servlet技术详解之EL表达式语言简明教程2010年01月04日星期一17:59EL的语法: 很简单${} 比如,假设我们先request.setAttibute(person,Person); 在JSP页面中如何访问person呢? html body the person is:${person} /body /html 如何访问一个对象的属性呢?例如一个对象Person的name属性 ${person.name} 或者 ${person[name]} 两者是等价的。记住.能做到的,也能做到。反之就不一定了 访问不同的对象实例: 1.访问一个普通的java bean,假设一个对象Person有name属性, Person person=new Person(); 先request.setAttibute(person,person); 显示name:${person.name} 2.访问数组,利用下标直接访问 String s={1,2}; request.setAttribute(s,s); 显示s[1] ${s[1]} 或者${s[1]} 3.访问List,直接用下标进行访问 ArrayList list=new ArrayList(); list.add(1); list add(1); request.setAttribute(list,list); 显示list[1]: ${list[1]} 或者${list[1]} 注意:这里你可能会举得奇怪,为什么数组和list下标可以用数字或者引号加数字 其实在解析的时候,里面的索引都是被强制转成int的,索引随便你加不加引号吧 4.访问一个Map,用.或者访问 Map map=new Map(); map.put(one,no.1); map.put(two,no.2); request.setAttribute(map,map); 显示map(one): ${map.one} 或者${map[one]} 注意:这里千万不能用${map[one]}因为下标里面的东西如果不加引号,它就相当于 一个属性,容器编译的时候就会去寻找one属性,相当于${one},找不到,当然就错了 中括号里面是可以嵌套表达式的,但是,中括号里面的表达式是去掉${}的 例如: ${test1[test2[2]]正确而${test1[${test2[2]}]编译报错 EL隐含对象 你可能又会问什么事隐含对象?隐式对象就是事先准备好的,你可以直接访问,不必知道是怎么来的。 就跟JSP中的隐含对象request,response一样,你直接用就行,没人会说你的,放心吧 EL共有11个隐含对象 pageContext 对应于javax,servlet.jsp.PageContext对象,利用pageContext,可以访问 ServletContext,Request,Response,Session,例如: ${pageContext.servletContext} ${pageContext.request} ${pageContext.response} ${pageContext.session} pageScope 类型是Map,将页面范围内的属性名和它的值进行映射。主要是用于获取页面范围的 属性值 例如上面的person ${pageScope.person} requestScope 类型是Map,用于直接获得请求访问内的属性值 例如 ${requestScope,user} sessionScope 跟上面的requestScope类似,只是范围不同,它是会话范围内的属性 例如 ${sessionScope.user} applicationScope 跟上面的requestScope类似,只是范围不同,它是应用程序范围内的属性 例如 ${applicationScope.user} param 类型是Map,就是请求中参数属性 获得name ${param.name} 加入一个请求参数名有多个参数值 paramValues 类型Map ${paramValues.name[0]} ${paramValues.name[1]} headerValuess 用于获得请求报头的值,等同于调用ServletRequest.getHeader() cookie 这个很好用。以前你在jsp中都是先requst.getCookies(); for()cookies[i].getName().equal(name); 现在一句话就搞定了 ${cookie.name.value} initParam 用于访问上下文的初始化参数。在web.xm

文档评论(0)

2017meng + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档