关于OGNL(Object Graph Navigation Language)

本文介绍了Struts2框架中OGNL表达式的几种实用技巧,包括直接获取值栈中的值、为Action中的对象属性赋值以及如何访问静态方法和属性等。特别强调了使用OGNL表达式时的注意事项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 . <s:property value="username"/>,可以直接取出value stack中的值。    

     需要注意的是:这里传递的参数的名称必须与Action类中该参数对应的set方法的名称一致。


2 . (domainModel)xxxAction.java 中有User对象的属性时,要给Use传值才能初始 化。  

      注意,User中一定要有参数为空的构造方法,除非在Action中直接new一个User对象。


3 . 访问Math类的静态方法 <s:property value="@@max(4,5)"/> 这种方式只能访问Math类的

     访问静态方法 <s:property value="@com.demo.ognl.S@s()"/>

     访问静态属性 <s:property value="@com.demo.ognl.S@STR"/>

package com.demo.ognl;
public class S {
	public static String STR = "static param";
	public static String s() {
		return "static method";
	}
}
     要访问静态方法 需要在struts.xml中配 置:

     <constant name="struts.ognl.allowStaticMethodAccess" value="true"></constant>  




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值