关于struts2标签取值的备忘录
取值要通过<s:property value="" />或在任意的<s:/>标签内使用%{};
当Action的valueStack中有该属性的值时,只需直接使用该属性的名字即可;
当Action的valueStack中没有该属性的值时,比如在session,application范围中的属性值时,需要加#或者#attr.;
例子:
假设某Action中有person成员变量,在application中存在company属性
那么我们可以通过以下方法取值:
<s:property value="person.name" />
<s:property value="#person.name" />
<s:property value="company.name" /> //无法取到,因为company不在action的valueStack中
<s:property value="#company.name" />
<s:textfield name="person.name" value="person.name" /> //错误,value会直接显示person.name字样
<s:textfield name="person.name" value="%{person.name}" />
<s:textfield name="person.company.name" value="%{#company.name}" />
<s:textfield name="person.company.name" value="%{#attr.company.name}" />
分享到:
相关推荐
CountRequest: <s:property value="#item.countRequest" /> </s:if> <s:else> AttrValue: <s:property value="#item.attrValue" /> </s:else> </s:iterator> ``` 这里使用了 `<s:iterator>` 标签来遍历一个...
在这个主题中,我们将深入探讨OGNL(Object-Graph Navigation Language)以及如何通过`<s:property>`标签来访问Struts2中的值栈(Value Stack)。值栈是Struts2中一个核心的概念,它是一个存储用户请求数据和应用...
taskInstanceId=<s:property value="id"/>">准备资料</a> </s:elseif> <s:else> <s:property value="#taskName" /> </s:else> </td> ``` #### 代码解析 1. **设置变量**:首先,使用`<s:set>`标签设置两个变量...
<p>Key: <s:property value="key"/>, Value: <s:property value="value"/></p> </s:iterator> ``` 4. **源码与工具**: 在实际开发中,了解Struts2的源码可以帮助我们更好地理解其工作原理,比如ActionContext...
<s:param name="id"><s:property value="id"/></s:param> </s:url>">Edit</a> </td> <td> <a href="<s:url action="delete" portletMode="edit"> <s:param name="id"><s:...
<input type="radio" name="<s:property value='chartTypeList[#st.count-1].syntax'/>FunType" value="${dworder}" <s:if test="pieFunType.equals(dworder.toString())">checked="checked"</s:if>/>${name} </s:...
<s:property /> </s:iterator> ``` 6. **s:bean** - 创建JavaBean实例标签 使用`s:bean`可以创建并初始化JavaBean对象,例如: ```jsp <s:bean name="lee.Person" id="p"> <s:param name="name" value="'...
<s:property value="#bean.Index+1"/> </td> <td class="data_tab_tdcl"> <s:property value="link_title"/> </td> </tr> </s:iterator> ``` #### 四、总结 Struts2中的UI标签为开发者提供了强大的工具来...
<p>Item #{itemStatus.index + 1}: <s:property value="#itemStatus.item" /></p> </s:iterator> ``` 在这里,`status`属性定义了一个变量`itemStatus`,我们可以访问它的`index`(当前元素的索引,从0开始)和`...
<td><s:property value="name" /></td> <td><s:property value="age" /></td> <!-- 其他列 --> </tr> </s:if> <s:else> <!-- 如果不满足条件,可以在这里放置其他内容或者不放任何内容 --> </s:else> </s:...
Struts 2中,`<s:property>`标签替代了`<write>`,提供了更丰富的功能,而逻辑控制则更多地通过Java EL(Expression Language)和OGNL(Object-Graph Navigation Language)来实现。 总的来说,`<write>`和`<logic>...
- Struts2中的`<s:iterator>`标签用于迭代集合中的元素。在迭代过程中,可以通过`isEven()`方法来判断当前元素是否处于偶数位置。此方法返回`true`表示当前位置是偶数位置,即第一个元素的位置不是偶数位置,第二个...
<td><s:property value="value[1]"/></td> </tr> </s:iterator> ``` 通过上述示例可以看出,`s:iterator` 在处理各种类型的集合时都非常灵活。开发者可以根据实际需求选择合适的方式进行遍历和展示数据。这不仅...
index is:<s:property value='status.index'/>attrName is:<s:property value='%{id}'/> attrName is:<s:property value='%{attrV[#status.index]}'/> </s:iterator> ``` 总结,Struts2的`s:iterator`标签是...
key:<s:property value='key'/> value:<s:property value='value'/> </s:iterator> ``` 或者: ```jsp <s:iterator value="map" id="id" status="st"> key:<s:property value='key'/> value:<s:property ...
<s:property value="listName.{^#this.age>1}"/> ``` - 筛选出年龄等于1的对象,并获取其年龄值: ```xml <s:property value="listName.{$#this.age==1}.{age}==null"/> ``` 以上是`<s:property>`标签及其OGNL...
当前索引是偶数为:<s:property value='#st.index'/></s:if> 当前元素值:<s:property value='char'/> </s:iterator> ``` 这段代码会判断当前元素索引是否为偶数,并打印相应的索引和元素值。 3. **遍历Map** ...
key : <s:property value='key'/>value:<s:property value='value'/> </s:iterator> ``` 4. **遍历数据栈中的对象和属性** 如果值是对象列表,例如`List<Attr>`,可以访问对象的属性,如`attrName`: ```jsp ...
<p>名称:<s:property value="name"/></p> </s:iterator> ``` - **说明**:遍历一个集合或数组,并对每个元素执行标签体内的内容。 25. **`<s:label>`** - 显示标签。 - **示例**: ```jsp <s:label value=...
1. <s:generator separator="" val=""></s:generator>----和<s:iterator>标签一起使用 H: 1. <s:head/>-----在<head></head>里使用,表示头文件结束 2. <s:hidden></s:hidden>-----隐藏值 I: 1. <s:...