`

OGNL表达式语言学习

 
阅读更多


访问值栈中的action的普通属性: username = <s:property value="username"/>
访问值栈中对象的普通属性(get set方法):
<s:property value="user.age"/> |
<s:property value="user['age']"/> |
<s:property value="user[\"age\"]"/> |
wrong: <%--<s:property value="user[age]"/>--%>

访问值栈中对象的普通属性(get set方法): <s:property value="cat.friend.name"/>
访问值栈中对象的普通方法:<s:property value="password.length()"/>
访问值栈中对象的普通方法:<s:property value="cat.miaomiao()" />
访问值栈中action的普通方法:<s:property value="m()" />

访问静态方法:<s:property value="@com.bjsxt.struts2.ognl.S@s()"/>
访问静态属性:<s:property value="@com.bjsxt.struts2.ognl.S@STR"/>
访问Math类的静态方法:<s:property value="@@max(2,3)" />

访问普通类的构造方法:<s:property value="new com.bjsxt.struts2.ognl.User(8)"/>

访问List:<s:property value="users"/>
访问List中某个元素:<s:property value="users[1]"/>
访问List中元素某个属性的集合:<s:property value="users.{age}"/>
访问List中元素某个属性的集合中的特定值:<s:property value="users.{age}[0]"/> | <s:property value="users[0].age"/>
访问Set:<s:property value="dogs"/>
访问Set中某个元素:<s:property value="dogs[1]"/>
访问Map:<s:property value="dogMap"/>
访问Map中某个元素:
<s:property value="dogMap.dog101"/> |
<s:property value="dogMap['dog101']"/> |
<s:property value="dogMap[\"dog101\"]"/>

访问Map中所有的key:<s:property value="dogMap.keys"/>
访问Map中所有的value:<s:property value="dogMap.values"/>
访问容器的大小:
<s:property value="dogMap.size()"/> |
<s:property value="users.size"/>

投影(过滤):<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:prperty value="users.{$#this.age>1}.{age} == null"/>

[]:<s:property value="[0].username"/>

分享到:
评论

相关推荐

    struts2 OGNL语言学习笔记

    本人在学习struts2框架时的学习笔记,主要是ognl表达式语言的运用。希望对大家有所帮助!

    struts学习笔记(4)

    15.OGNL表达式 对象图导航语言 Object Graph Navigation ...是一种比较强大的表达式语言(比EL表达式的功能多很多) 1)ognl表达式只能写在Struts2标签的里面(任何一个struts2标签都行) EL表达式可以写在页面的任何位置

    Java SpEL、Ognl、MVEL2表达式Hook并记录小项目.zip

    软件开发设计:应用软件开发、系统软件开发、移动应用开发、网站开发C++、Java、python、web、C#等语言的项目开发与学习资料 硬件与设备:单片机、EDA、proteus、RTOS、包括计算机硬件、服务器、网络设备、存储设备...

    Struts2 学习笔记

    03 OGNL表达式语言 23 04 Struts2-Tags 28 Struts2标签目录 28 一、 property标签 28 二、 set标签 29 三、 bean标签 29 四、 标签-少使用 29 五、 If elseif else 30 六、 Iterator标签 31 七、 Theme 31 05设计...

    Struts2 in action中文版

    6.7 OGNL表达式语言的基础知识 130 6.7.1 什么是OGNL 130 6.7.2 Struts 2中常用的表达式语言特性 131 6.7.3 表达式语言的高级特性 135 6.8 小结 137 第7章 UI组件标签 139 7.1 为什么需要UI组件标签 139 7.2 标签、...

    SybaseTransfer:Sybase数据库迁移

    Sybase 数据库迁移 本项目基于Java语言实现了一个Sybase数据库迁移解决方案,并提供了跨版本迁移特性(已验证的版本是Sybase IQ ...目前程序中已经实现的过滤器有:排除过滤器、名称列表过滤器、名称过滤器、OGNL表达式

    Java Web编程宝典-十年典藏版.pdf.part2(共2个)

    9.2 OGNL表达式语言 9.2.1 认识OGNL 9.2.2 Struts2框架中的OGNL 9.2.3 操作普通的属性与方法 9.2.4 访问静态方法与属性 9.2.5 访问数组 9.2.6 访问List、Set、M印集合 9.2.7 投影与选择 9.3 Struts2的标签库 9.3.1 ...

    达内java培训目录

    2.开班 2周内,贯穿着 Java 语言基础及 Java 面向对象的学习,学员将完成专业版的俄罗斯方块项目 3. 开班一个半月内,贯穿 JavaSE及数据库的学习将完成 T-DMS 数据 采集系统项目 • 整个系统由 DMS 采集端、DMS ...

    Java学习笔记-个人整理的

    {3.4}正则表达式}{71}{section.3.4} {3.5}StringBuffer}{75}{section.3.5} {3.6}StringBuilder}{76}{section.3.6} {3.7}StringBuilder与StringBuffer的缺点}{76}{section.3.7} {3.8}内部类}{77}{section.3.8} ...

    低清版 大型门户网站是这样炼成的.pdf

    2.1.7 功能强大的表达式语言ognl 47 2.1.8 struts 2的运行流程分析—helloworld 48 2.1.9 struts 2的异常处理 52 2.2 struts 2配置精要 54 2.2.1 web.xml中struts 2的配置实现 54 2.2.2 struts 2属性配置文件...

Global site tag (gtag.js) - Google Analytics