Struts2 OGNL

OGNL描述:
    Object Graph Navigation Language,是一种比较或者完全依赖struts2标签的语言。<s:property value="ognl表达式"/>
    ,这个标签几乎通吃OGNL。但 有些标签默认是当作字符串的,比如textfield。

目录:
1,调用静态方法
2,获取request中Attribute的值
3,获取session中的值
4,获取application中的值 
5,按照request,session,application的顺序获取值
6,$的使用
7,#的使用
8,%的使用

子曰:
 1,1,首先要到struts.xml中配置一个常量(constant)
         <constant name="struts.ognl.allowStaticMethodAccess" value="true" ></constant>       
 1,2,在jsp中结合struts2标签使用OGNL
         <s:property value="@com.silone.action.TestAction@sayHello()" />
         @带包名但不带.java的类名@带括号的方法名

 2,结合struts2的标签
       <s:property  value="#request.user.username"/>
        这相当于调用了((User)request.getAttribute("user")).getUsername();
 3,同2,将request改为session即可。
 4,同2,将request改为application即可 。
 5,同2,将request改为attr即可。
 6|用于在xml文件中引用OGNL表达式。只要容器里面有,通过$就可以使用OGNL来获取容器中的值。${OGNL}
      只能在struts2国际化资源文件和struts.xml及其包含的xml中使用。
 7# |用来使用内置对象(request,session,application,attr)如果不是内置对象,则跳过语句或者返回空。
 8%|有些标签的value属性的解析是把OGNL当作字符串,这是就需要一个特殊符号来明确这是OGNL,得进行解析。
      例如在textfield中,value就会直接将OGNL当作字符串而不进行解析。这个特殊符号就是%{},用它把OGNL包起
      来即可。%{#session.user.username} 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值