`
安之若素
  • 浏览: 145004 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

OGNL—<s:property>各种用法

    博客分类:
  • ssh
阅读更多

 

 

 

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

3、访问值栈中对象的普通属性(get set方法): <s:property value="cat.friend.name"/>
4、访问值栈中对象的普通方法:<s:property value="password.length()"/>
5、访问值栈中对象的普通方法:<s:property value="cat.miaomiao()" />
6、访问值栈中action的普通方法:<s:property value="m()" />
7、访问静态方法:<s:property value="@com.bjsxt.struts2.ognl.S@s()"/>
8、访问静态属性:<s:property value="@com.bjsxt.struts2.ognl.S@STR"/>
9、访问Math类的静态方法:<s:property value="@@max(2,3)" />

10、访问普通类的构造方法:<s:property value="new com.bjsxt.struts2.ognl.User(8)"/>
11、访问List:<s:property value="users"/>
12、访问List中某个元素:<s:property value="users[1]"/>
13、访问List中元素某个属性的集合:<s:property value="users.{age}"/>
14、访问List中元素某个属性的集合中的特定值:
        <s:property value="users.{age}[0]"/> 
        <s:property value="users[0].age"/>

15、访问Set:<s:property value="dogs"/>
16、访问Set中某个元素:<s:property value="dogs[1]"/>
17、访问Map:<s:property value="dogMap"/>
18、访问Map中某个元素:
        <s:property value="dogMap.dog101"/> 
        <s:property value="dogMap['dog101']"/> 
        <s:property value="dogMap[\"dog101\"]"/>

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

22、投影(过滤):<s:property value="users.{?#this.age==1}[0]"/>
23、投影:<s:property value="users.{^#this.age>1}.{age}"/>
24、投影:<s:property value="users.{$#this.age>1}.{age}"/>
25、投影:<s:property value="users.{$#this.age>1}.{age} == null"/>
26、[]:<s:property value="[0].username"/>

 



  


  
分享到:
评论

相关推荐

    struts2 标签使用

    接下来,我们将通过几个具体的示例来详细了解 `&lt;s:if&gt;` 标签的使用方法。 ##### 示例一:简单的条件判断 ```html &lt;s:set name="country" value="China" /&gt; &lt;s:if test="%{#country == 'China'}"&gt; This is China! ...

    struts2 OGNL之&lt;s:property&gt;标签访问值栈(value stack)用法

    在这个主题中,我们将深入探讨OGNL(Object-Graph Navigation Language)以及如何通过`&lt;s:property&gt;`标签来访问Struts2中的值栈(Value Stack)。值栈是Struts2中一个核心的概念,它是一个存储用户请求数据和应用...

    Strust2的if-else <tr></tr>用法

    同时,可以使用`&lt;s:choose&gt;`, `&lt;s:when&gt;`, 和 `&lt;s:otherwise&gt;`标签来创建类似于switch-case的结构: ```jsp &lt;s:choose&gt; &lt;s:when test="%{status == 'active'}"&gt; &lt;!-- 活动状态的行内容 --&gt; &lt;/s:when&gt; &lt;s:when ...

    OGNL学习笔记,包含struts2中ognl的各种用法

    在示例代码中,`&lt;s:property&gt;`标签使用OGNL表达式`#request.req`、`#session.sess`和`#application.app`分别获取了Request、Session和Application范围内的属性值。这展示了OGNL如何灵活地访问不同级别的数据。 其次...

    struts2中siterator 标签的使用详解 及 OGNL用法.docx

    这篇文档详细讲解了 `s:iterator` 标签的使用方法以及 OGNL(Object-Graph Navigation Language)的用法。 1. **s:iterator 标签的基本属性** - `value`:这个属性是必需的,用于指定要迭代的集合。它可以是一个...

    struts2 OGNL 表达式及各种标签的使用

    - 在JSP页面上,使用OGNL标签显示和处理数据,如`&lt;s:if test="%{user.isAdmin}"&gt;管理员界面&lt;/s:if&gt;`。 通过理解并熟练运用OGNL表达式和相关标签,开发者可以更高效地构建Struts2应用程序,实现数据的灵活绑定和...

    struts2 OGNL表达式使用

    4. 访问值栈中对象的普通方法:&lt;s:property value="cat.friend.say().length()"/&gt; 5. 访问值栈中action的普通方法:&lt;s:property value="execute()"/&gt; 访问静态方法和属性 6. 访问静态方法:&lt;s:property value="@...

    ognl标签的使用案例

    除了属性访问,OGNL还支持动态方法调用,如`&lt;s:property value="%{user.getName()}" /&gt;`。这允许我们在不改变视图层代码的情况下添加新的方法。 **6. 输入流处理与`inputStream`标签** 在Struts2中,`inputStream`...

    OGNL访问OGNL上下文和Action上下文Struts2rarfdsafsdfasdfas

    通过阅读`Struts#.txt`文件,我们可以深入学习Struts2框架下OGNL的使用方法和技巧,了解如何有效地利用OGNL上下文和Action上下文来操纵数据,以及如何在JSP页面中使用OGNL标签进行数据展示和控制流。这将有助于提升...

    ognl教程代码

    - **请求作用域** (`#request`): 在 JSP 页面或 Struts2 动作中,可以直接使用 `&lt;s:property value="#request.req"/&gt;` 来获取请求作用域内的 `req` 变量的值。 - **会话作用域** (`#session`): 同样地,`&lt;s:property...

    property用法.txt

    ### property用法详解 在Java Web开发中,特别是使用Struts2框架时,`property`标签是处理数据展示的关键工具之一。它主要用于显示Action中的属性值。本文将深入解析`property`标签的各种用法,帮助开发者更好地...

    struts2的s标签

    &lt;p&gt;名称:&lt;s:property value="name"/&gt;&lt;/p&gt; &lt;/s:iterator&gt; ``` - **说明**:遍历一个集合或数组,并对每个元素执行标签体内的内容。 25. **`&lt;s:label&gt;`** - 显示标签。 - **示例**: ```jsp &lt;s:label value=...

    struts标签和ognl语法

    在内部,可以使用 `&lt;s:property&gt;` 输出元素的特定属性,如 `id` 和 `title`。 3. **`&lt;s:if&gt;`、`&lt;s:elseif&gt;` 和 `&lt;s:else&gt;`**:这些标签提供了条件逻辑,用于根据 OGNL 表达式的值来决定是否渲染某些内容。例如,`&lt;s...

    struts2标签介绍

    1. `&lt;s:bean&gt;` - 类似于Struts1中的JavaBean操作,但在Struts2中使用较少,因为Struts2更倾向于使用OGNL表达式来访问对象。 **C组标签:** 1. `&lt;s:checkbox&gt;` - 创建复选框,可以绑定到Action的属性。 2. `&lt;s:...

    struct及其struct2.0标签(OGNL)讲解,有实例

    5. **动态方法调用**:`&lt;s:set&gt;`和`&lt;s:property&gt;`等标签可以使用OGNL表达式进行动态方法调用,提高代码灵活性。 6. **选择列表**:`&lt;s:select&gt;`标签可以用于创建下拉列表,通过集合数据源动态生成选项。 通过学习...

    struts2标签库

    - 遍历Map:`&lt;s:iterator value="#foobar" id="n" status="st"&gt;&lt;s:property value="key"/&gt;=&lt;s:property value="value"/&gt;&lt;br/&gt;&lt;/s:iterator&gt;` - **Set标签**:用于将某个值放入指定范围。 - `scope`属性:定义变量...

    struts学习笔记(4)

    &lt;s:property value="1&gt;2 && 2&lt;3" /&gt; ``` #### 三、Struts2 标签详解 Struts2 提供了一套丰富的标签库,可以帮助开发者更高效地开发 Web 应用。 1. **引入 Struts2 标签库**: - 在 JSP 页面中使用 `&lt;%@ taglib...

    struts2_ognl基本用法.doc

    &lt;s:property value="@com.bjsxt.struts2.ognl.S@s()"/&gt; ``` 这里展示了如何调用类`com.bjsxt.struts2.ognl.S`中的静态方法`s()`。 **2. 访问静态属性** ```html &lt;s:property value="@...

    struts2_标签使用方法.doc

    `&lt;s:password&gt;`、`&lt;s:property&gt;`和`&lt;s:push&gt;`: - `&lt;s:password&gt;`:创建密码输入字段。 - `&lt;s:property/&gt;`:根据'value'属性显示值,可以从值栈中获取数据。 - `&lt;s:push&gt;`:将值压入栈,使得后续的`s:property`标签...

    struts2中iterator 标签的使用详解

    本文将详细解析`&lt;s:iterator&gt;`标签的使用方法,包括其关键属性、OGNL表达式的应用以及一些高级用法。 #### 1. 基础用法:遍历数组或列表 `&lt;s:iterator&gt;`标签最基本的用法是遍历一个数组或列表。例如: ```xml &lt;s:...

Global site tag (gtag.js) - Google Analytics