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"/>
分享到:
相关推荐
接下来,我们将通过几个具体的示例来详细了解 `<s:if>` 标签的使用方法。 ##### 示例一:简单的条件判断 ```html <s:set name="country" value="China" /> <s:if test="%{#country == 'China'}"> This is China! ...
在这个主题中,我们将深入探讨OGNL(Object-Graph Navigation Language)以及如何通过`<s:property>`标签来访问Struts2中的值栈(Value Stack)。值栈是Struts2中一个核心的概念,它是一个存储用户请求数据和应用...
同时,可以使用`<s:choose>`, `<s:when>`, 和 `<s:otherwise>`标签来创建类似于switch-case的结构: ```jsp <s:choose> <s:when test="%{status == 'active'}"> <!-- 活动状态的行内容 --> </s:when> <s:when ...
在示例代码中,`<s:property>`标签使用OGNL表达式`#request.req`、`#session.sess`和`#application.app`分别获取了Request、Session和Application范围内的属性值。这展示了OGNL如何灵活地访问不同级别的数据。 其次...
这篇文档详细讲解了 `s:iterator` 标签的使用方法以及 OGNL(Object-Graph Navigation Language)的用法。 1. **s:iterator 标签的基本属性** - `value`:这个属性是必需的,用于指定要迭代的集合。它可以是一个...
- 在JSP页面上,使用OGNL标签显示和处理数据,如`<s:if test="%{user.isAdmin}">管理员界面</s:if>`。 通过理解并熟练运用OGNL表达式和相关标签,开发者可以更高效地构建Struts2应用程序,实现数据的灵活绑定和...
4. 访问值栈中对象的普通方法:<s:property value="cat.friend.say().length()"/> 5. 访问值栈中action的普通方法:<s:property value="execute()"/> 访问静态方法和属性 6. 访问静态方法:<s:property value="@...
除了属性访问,OGNL还支持动态方法调用,如`<s:property value="%{user.getName()}" />`。这允许我们在不改变视图层代码的情况下添加新的方法。 **6. 输入流处理与`inputStream`标签** 在Struts2中,`inputStream`...
通过阅读`Struts#.txt`文件,我们可以深入学习Struts2框架下OGNL的使用方法和技巧,了解如何有效地利用OGNL上下文和Action上下文来操纵数据,以及如何在JSP页面中使用OGNL标签进行数据展示和控制流。这将有助于提升...
- **请求作用域** (`#request`): 在 JSP 页面或 Struts2 动作中,可以直接使用 `<s:property value="#request.req"/>` 来获取请求作用域内的 `req` 变量的值。 - **会话作用域** (`#session`): 同样地,`<s:property...
### property用法详解 在Java Web开发中,特别是使用Struts2框架时,`property`标签是处理数据展示的关键工具之一。它主要用于显示Action中的属性值。本文将深入解析`property`标签的各种用法,帮助开发者更好地...
<p>名称:<s:property value="name"/></p> </s:iterator> ``` - **说明**:遍历一个集合或数组,并对每个元素执行标签体内的内容。 25. **`<s:label>`** - 显示标签。 - **示例**: ```jsp <s:label value=...
在内部,可以使用 `<s:property>` 输出元素的特定属性,如 `id` 和 `title`。 3. **`<s:if>`、`<s:elseif>` 和 `<s:else>`**:这些标签提供了条件逻辑,用于根据 OGNL 表达式的值来决定是否渲染某些内容。例如,`<s...
1. `<s:bean>` - 类似于Struts1中的JavaBean操作,但在Struts2中使用较少,因为Struts2更倾向于使用OGNL表达式来访问对象。 **C组标签:** 1. `<s:checkbox>` - 创建复选框,可以绑定到Action的属性。 2. `<s:...
5. **动态方法调用**:`<s:set>`和`<s:property>`等标签可以使用OGNL表达式进行动态方法调用,提高代码灵活性。 6. **选择列表**:`<s:select>`标签可以用于创建下拉列表,通过集合数据源动态生成选项。 通过学习...
- 遍历Map:`<s:iterator value="#foobar" id="n" status="st"><s:property value="key"/>=<s:property value="value"/><br/></s:iterator>` - **Set标签**:用于将某个值放入指定范围。 - `scope`属性:定义变量...
<s:property value="1>2 && 2<3" /> ``` #### 三、Struts2 标签详解 Struts2 提供了一套丰富的标签库,可以帮助开发者更高效地开发 Web 应用。 1. **引入 Struts2 标签库**: - 在 JSP 页面中使用 `<%@ taglib...
<s:property value="@com.bjsxt.struts2.ognl.S@s()"/> ``` 这里展示了如何调用类`com.bjsxt.struts2.ognl.S`中的静态方法`s()`。 **2. 访问静态属性** ```html <s:property value="@...
`<s:password>`、`<s:property>`和`<s:push>`: - `<s:password>`:创建密码输入字段。 - `<s:property/>`:根据'value'属性显示值,可以从值栈中获取数据。 - `<s:push>`:将值压入栈,使得后续的`s:property`标签...
本文将详细解析`<s:iterator>`标签的使用方法,包括其关键属性、OGNL表达式的应用以及一些高级用法。 #### 1. 基础用法:遍历数组或列表 `<s:iterator>`标签最基本的用法是遍历一个数组或列表。例如: ```xml <s:...