Struts2 OGNL表达式实例详解
1. 什么是OGNL
OGNL即Object-Graph Navigation Language,是一个强大的表达式语言,它可以对Java对象进行操作并获取想要的数据,Struts2框架中使用OGNL表达式引擎来解析前端传递的参数,同时也支持在配置文件中使用OGNL表达式。
2. OGNL表达式语法
OGNL表达式的语法非常简洁明了,以下是OGNL的基本语法:
2.1. 变量
在OGNL中,使用#开头定义变量,语法如下:
-
varName
2.2. 属性
使用"."连接符号获取一个对象的属性值,如 pet.name 表示获取pet对象的name属性值。
2.3. 方法
使用"."连接符号调用一个对象的方法,如 pet.getName() 表示调用pet对象的getName()方法。
2.4. 类型
在OGNL中,使用@表示引用Java类,如@java.util.Date表示引用java.util.Date类。
2.5. 运算符
OGNL支持基本的算数运算符(+,-,*,/),关系运算符(>,<,>=,<=),逻辑运算符(&&,||,!)等。
3. OGNL的实例
3.1. 操作对象属性
<h1>获取对象属性值</h1>
<s:set var="person" value="{'name':'张三','age':18,'address':{'province':'山东省','city':'青岛市'}}"/>
<s:property value="#person.name"/> <!-- 输出:张三 -->
<s:property value="#person.address.province"/> <!-- 输出:山东省 -->
3.2. 调用对象方法
<h1>调用对象方法</h1>
<s:set var="date" value="@java.util.Date@new()"/>
<s:property value="#date.getTime()"/> <!-- 输出当前时间的毫秒数 -->
4. 总结
以上就是OGNL的基本语法和实例,只需掌握这些简单的语法规则,便可以在Struts2项目中更好地使用OGNL表达式。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Struts2 OGNL表达式实例详解 - Python技术站