Struts2_学习笔记(七)----OGNL
来源:互联网 发布:win7网络位置怎么修改 编辑:程序博客网 时间:2024/05/22 10:46
对于domain model只有传入user.xxx时系统才会构造一个user对象,也可以手动构造,如果使用系统自动构造时,domain model 里面需要有参数为空的构造函数。
1、 访问Value Stack 中的普通属性和方法
属性:
<s:propertyvalue="user.age"/>
<s:propertyvalue="user['age']"/>
<s:propertyvalue="user[\"age\"]"/> \”是转义字符
wrong: <s:property value="user[age]"/>
方法:
<s:propertyvalue="password.length()"/>
2、 访问普通类和Math类的静态方法、属性
例如:第一个@后面是类名,第二个@后面是方法或者属性名。
<s:propertyvalue="@com.bjsxt.struts2.ognl.S@s()"/>
调用Math类中的静态方法
<s:propertyvalue="@@max(2,3)"/>
3、 访问普通类的构造方法
<s:propertyvalue="new com.bjsxt.struts2.ognl.User(8)"/>
4、 访问集合(包括数组)
访问List:<s:propertyvalue="users"/>
访问List中某个元素:<s:propertyvalue="users[1]"/>
访问List中元素某个属性的集合:<s:propertyvalue="users.{age}"/>
访问List中元素某个属性的集合中的特定值:<s:propertyvalue="users.{age}[0]"/> |<s:propertyvalue="users[0].age"/>
访问Set:<s:propertyvalue="dogs"/>
访问Set中某个元素:<s:propertyvalue="dogs[1]"/> 不能这样取值!
访问Map:<s:propertyvalue="dogMap"/>
访问Map中某个元素:<s:propertyvalue="dogMap.dog101"/> |<s:propertyvalue="dogMap['dog101']"/> |<s:propertyvalue="dogMap[\"dog101\"]"/>
访问Map中所有的key:<s:propertyvalue="dogMap.keys"/>
访问Map中所有的value:<s:propertyvalue="dogMap.values"/>
访问容器的大小:<s:propertyvalue="dogMap.size()"/> |<s:propertyvalue="users.size"/>
5、 投影
?#取出所有符合条件的user,^#取出第一个符合条件的user,$#取出符合最后一个符合条件的user
<s:propertyvalue="users.{?#this.age==1}[0]"/> age为1的第一个元素
<s:propertyvalue="users.{^#this.age>1}.{age}"/>
<s:propertyvalue="users.{$#this.age>1}.{age}"/>
<s:propertyvalue="users.{$#this.age>1}.{age} == null"/>
6、 用“[ ]”访问元素
[ x ]:Value Stack中从第x个对象开始一直到栈底的集合。
- Struts2_学习笔记(七)----OGNL
- struts2学习笔记(七)——OGNL
- Struts2_学习笔记(八)----Struts-tags
- Struts2_学习笔记(十)----I18N
- Struts2_学习笔记(十二)----Struts2总结
- Struts2学习笔记(OGNL)
- Struts2_学习笔记(一)--------学习工具下载、HelloWorld、运行机制
- Struts2_学习笔记(一)--------学习工具下载、HelloWorld、运行机制
- Struts2_学习笔记(二)--------Namespace、Action、Path、ActionMethod_DMI、ActionWildcard
- Struts2_学习笔记(二)--------Namespace、Action、Path、ActionMethod_DMI、ActionWildcard
- Struts2学习总结(七):Struts中的OGNL
- Struts2学习笔记(七):OGNL之<s:property>标签访问值栈(value Stack)对象属性
- Struts2学习笔记(十) OGNL
- struts2学习笔记(7)------------ognl表达式
- Struts2学习笔记(九) OGNL
- OGNL学习笔记1
- struts2学习笔记----OGNL
- OGNL学习笔记
- 批量生成小说目录以及更改一些图片名称
- Java面试题
- C#Thread类—多线程
- 23种设计模式(11):责任连模式
- Ubuntu 12.04 (或11.10) 一键部署安装OpenStack云计算平台
- Struts2_学习笔记(七)----OGNL
- ORACLE 存储过程 遍历查询记录
- Linux性能分析工具详解
- 利用开源程序(ImageMagick+tesseract-ocr)实现图像验证码识别
- HDOJ 1869 六度分离
- HTTP通信POST方式
- C#动态编译
- 学习笔记(二十二)
- Git历险记(一)