文章转载自http://honly-java.iteye.com/blog/1608139
一,访问普通的属性和方法
1,访问值栈中的action的普通属性值
<s:property value="name"/>
2,访问值栈中对象的普通属性(get set方法)
user.xxx只有传,才会构造,
想初始化domain model,
可以自己new,User=new User();Use u = new User(9);
也可以传参数值,?user.age=9
但这时候需要保持参数为空的构造方法public User(){......}
<s:propery value="user.age"/>
3,访问值栈中对象的普通方法 password.length()
4,访问值栈中对象的普通方法 cat.miaomaio()
5,访问值栈中action的普通方法 m()
二,访问静态的属性和方法
1,访问静态的属性
@类名.@属性
2,访问静态的方法
@类名.@方法名
3,访问Math类的静态方法:
<s:property value="@@max(2,3)" />
三,访问普通类的构造方法:
访问普通类的构造方法:<s:property value="new com.struts2.ognl.dao.User(8)"/>
四,访问集合类
访问List:<s:property value="users"/><br/>
访问List中某个元素:<s:property value="users[1]"/><br/>
访问List中元素某个属性的集合:<s:property value="users.{name}"/><br/>
访问List中元素某个属性的集合中的特定值:
<s:property value="users.{name}[0]"/> | <s:property value="users[0].name"/><br/>
访问Set:<s:property value="dogs"/><br/>
访问Set中某个元素:<s:property value="dogs[1]"/><br/>
访问Map:<s:property value="dogMap"/><br/>
访问Map中某个元素:<s:property value="dogMap.dog101"/> | <s:property value="dogMap['dog101']"/> | <s:property value="dogMap[\"dog101\"]"/><br/>
访问Map中所有的key:<s:property value="dogMap.keys"/><br/>
访问Map中所有的value:<s:property value="dogMap.values"/><br/>
访问容器的大小:<s:property value="dogMap.size()"/> | <s:property value="users.size"/> <br/>
五,投影(过滤)
投影(过滤):<s:property value="users.{?#this.age==1}[0]"/>
投影:<s:property value="users.{^#this.age>1}.{age}"/>
投影:<s:property value="users.{$#this.age>1}.{age}"/>
投影:<s:property value="users.{$#this.age>1}.{age} == null"/>
六,通过[]访问
[]:<s:property value="[0]"/><br/>
<s:property value="[0].user.name"/>
分享到:
相关推荐
Apache Commons OGNL - Object Graph Navigation Library 4.0-SNAPSHOT API 英文版 EasyCHM制作 厚颜祈求1分。欢迎批评指正。
其中,OGNL(Object-Graph Navigation Language)是Struts2中的核心表达语言,用于在视图层与模型层之间传递数据。在深入理解OGNL的源码之前,我们首先需要了解OGNL的基本概念和用法。 OGNL是一种强大的表达式语言...
struts2 中 OGNL表达式的使用struts2 中 OGNL表达式的使用
Struts2_OGNL Demo 是一个用于演示Struts2框架中OGNL(Object-Graph Navigation Language)表达式语言的实例。这个项目旨在帮助开发者理解和学习如何在Struts2中使用OGNL来操纵对象和数据。OGNL是Struts2中一个重要的...
在Struts2中,OGNL(Object-Graph Navigation Language)是一种强大的表达式语言,用于数据绑定和表示层的数据交换。这篇博客文章可能详细探讨了如何在Struts2中使用OGNL来传递和操作数据。 OGNL是Struts2的核心...
OGNL(Object-Graph Navigation Language)是Struts2框架中的一个重要组件,用于在Web应用中访问和操作Java对象的属性,调用其方法,以及执行类型转换等操作。 OGNL是对象图导航语言的缩写,它是一种功能强大的...
OGNL(Object-Graph Navigation Language)是一种基于 Java 的表达式语言,Struts2 框架中使用 OGNL 来访问和操作 ValueStack 中的对象。在 Struts2 中,OGNL 是一个强大的工具,允许开发者访问和操作 ValueStack 中...
在这个“Struts2 OGNL用法项目”中,我们将深入探讨OGNL(Object-Graph Navigation Language),它是Struts2中一个强大的表达式语言,用于在模型对象和视图之间进行数据绑定和表达式计算。 OGNL是Struts2的核心组件...
在Struts2中,OGNL(Object-Graph Navigation Language)是一种强大的表达式语言,用于获取和设置对象的属性。这篇博客将深入探讨OGNL在Struts2中的应用,并通过案例"TextOgnl"来展示其工作原理。 一、OGNL的基本...
在Struts2中,OGNL(Object-Graph Navigation Language)是一种强大的表达式语言,用于获取和设置对象的属性。"struts2对Ognl的封装--PropertyAccessor"这个主题主要涉及Struts2框架如何处理OGNL表达式,特别是如何...
其中,OGNL(Object-Graph Navigation Language)是Struts2中的一个关键组件,它是一种强大的表达式语言,用于在运行时访问和操作对象的属性。这个压缩包包含的是OGNL的2版本的源代码,这对于理解Struts2框架的工作...
OGNL,全称为Object Graph Navigation Language,是一种强大的表达式语言,专门用于操作和导航Java对象图。它允许用户轻松地获取和设置Java对象的属性,同时也支持类型转换、方法调用以及复杂的逻辑表达式。OGNL的...
Struts2是一个流行的Java web框架,它利用OGNL(Object-Graph Navigation Language)作为其核心表达式语言。OGNL是一种强大的表达式语言,允许开发者在Java对象之间导航和操作数据。在Struts2中,OGNL被广泛用于访问...
在Struts2中,OGNL(Object-Graph Navigation Language)是一种强大的表达式语言,用于获取和设置对象的属性。这篇文档将深入探讨OGNL在Struts2中的使用,以及它如何增强框架的功能。 ### OGNL简介 OGNL是一种轻量...
OGNL(Object-Graph Navigation Language)是一种强大的表达式语言,用于获取或设置一个对象图中的属性。它在Struts2框架中扮演着极其重要的角色,是Struts2实现动态数据处理的核心技术之一。 OGNL的主要特点包括:...
而OGNL(Object-Graph Navigation Language)是Struts2的核心组件之一,用于处理表达式语言,使得开发者能够灵活地访问和操作对象的属性。在这个实例中,我们将深入探讨如何在Struts2中使用OGNL来获取Servlet对象的...
在Struts2中,OGNL(Object-Graph Navigation Language)是一种强大的表达式语言,用于访问和操作对象图。这个“struts2-OGNL表达式测试”可能是一个测试项目或代码示例,旨在演示如何在Struts2应用中使用OGNL表达式...
在Struts2中,OGNL(Object-Graph Navigation Language)是一种强大的表达式语言,用于获取和设置对象的属性。这篇博客将深入探讨OGNL表达式的理解和用法。 OGNL的全称是对象图导航语言,它的主要功能是在对象模型...