EL表达式取servlet中值方法的总结.docVIP

  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文档。上传文档
查看更多
EL表达式取servlet中值方法的总结

EL表达式取servlet中值方法的总结 EL的语法: 比如: request.setAttibute(person,Person); 在JSP页面中如何访问person呢? html body the person is: ${person} /body /html 如何访问一个对象的属性呢? 比方说一个对象 Person 的 name属性 ${}或者${person[name]} 两者是等价的。 记住.能做到的,[]也能做到。反过来可就不一定了 E表达式: 一、下面是第一个最简单的表达式例子: 建立servlet 文件,名称为:Hello.java 内容如下: request.setAttribute(hello,hello); request.getRequestDispatcher(index.ftp).forward(request,response); 建立index.ftp 文件,内容如下: ${hello} 二、作用域的访问对象 pageScope requestScope sessionScope applicationScope 获取的机制如何? 上面ftp的代码改写成: ${requestScope.hello}等价于${hello} 如果明确访问对象,直接到访问对象中找,否则就从最小的作用域开始找直到applicationScope, 最终把结果返回 三、举例说明 先建立实体类 Student.java School.java 1、实例1 Hello.java Student stu=new Student(); stu.setName(张三); request.setAttribute(student,stu); Index.jsp ${requestScope.student[name]}或${requestS} 2、实例2 Hello.java School school=new School(); Student stu=new Student(); stu.setName(张三); school.setStudent(stu); request.setAttribute(school,school); Index.jsp ${requestScope.school.student[name]}或${requestS} 3、实例3 Hello.java ArrayList list=new ArrayList(); Student stu=new Student(); stu.setName(张三); Student stu2=new Student(); stu2.setName(张三2); list.add(stu); list.add(stu2); request.setAttribute(list,list); Index.jsp ${requestScope.list[1].name} 访问不同的对象实例: 1.访问一个普通的java bean, 假设 一个对象 Person 有name属性, Person person=new Person(); 先request.setAttibute(person,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]}]编译报

文档评论(0)

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

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

版权声明书
用户编号:8000054077000003

1亿VIP精品文档

相关文档