OGNL使用小结.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文档。上传文档
查看更多
1、“#”主要有三种用途: 访问OGNL上下文和Action上下文,#相当于ActionContext.getContext ;下表有几个ActionContext中有用的属性: 名称 作用 例子 parameters 包含当前HTTP请求参数的Map #parameters.id[0]作用相当于request.getParameter id request 包含当前HttpServletRequest的属性(attribute 的Map #request.userName相当于request.getAttribute userName session 包含当前HttpSession的属性(attribute)的Map #session.userName相当于session.getAttribute userName application 包含当前应用的ServletContext的属性(attribute)的Map #application.userName相当于application.getAttribute userName attr 用于按request session application顺序访问其属性(attribute) #attr.userName相当于按顺序在以上三个范围(scope)内读取userName属性,直到找到为止 用于过滤和投影(projecting 集合,如books. ?#this.price 100 ; 构造Map,如# foo1:bar1, foo2:bar2 。 2、“%”符号的用途 在标志的属性为字符串类型时,计算OGNL表达式的值。例如在Ognl.jsp中加入以下代码: [size 13px] %的用途 s:url value #foobar[foo1] / s:url value % #foobar[foo1] / 清单6 演示%用途的代码片段 3、“$”有两个主要的用途 用于在国际化资源文件中,引用OGNL表达式,例子请参考《在Struts 2.0中国际化 i18n 您的应用程序》 在Struts 2配置文件中,引用OGNL表达式,如 action name AddPhoto class addPhoto interceptor-ref name fileUploadStack / result type redirect ListPhotos.action?albumId $ albumId 1、OGNL除了支持所有的Java操作符外,还支持以下几种: 1、逗号, 与C语言中的逗号操作符类似。 2、花括号 用于创建列表,元素之间用逗号分隔。 3、in和not in 用于判断一个值是否在集合中。 2、访问静态方法和静态字段   @class@method args //调用静态方法   @class@field //调用静态字段   其中class必须给出完整的类名 包括包名 ,如果省略class,那么默认使用的类是java.util.Math,如:   @@min 5,3 @@max 5,3 @@PI 3、索引访问   OGNL支持多种索引方式的访问。 1、数组和列表索引 在OGNL中,数组和列表可以大致看成是一样的。 如:array[0]、list[0]。表达式: ’zhangsan’,lisi’,wangwu’ [1]等。 2、JavaBean的索引属性 要使用索引属性,需要提供两对setter和getter方法,一对用于数组,一对用于数组中的元素。 如:有一个索引属性interest,它的getter和setter如下 public String[] interest; public String[] getInterest return interest; public void setInterest String[] interest erest interest; public String getInterest int i return interest[i] public void setInterest int i, String newInterest interest[i] newInterest; 对于表达式interest[2],OGNL可以正确解释这个表达式,调用getInterest 2 方法。如果是设置的情况下,会调用setInterest 2,value 方法。 3、OGNL对象的索引属性 JavaBean的索引属性只能使用整型作为索引,OGNL扩展了索引属性的概念,可以使用任意的对象来作为索引。 4、对集合进行操作   1

文档评论(0)

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

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

1亿VIP精品文档

相关文档