if elseif else
名称 | 必需 | 默认 | 类型 | 描述 | 备注 |
test | 是 |
| boolean | 决定标志里的内容是否显示的表达式 | else标志没有这个参数 |
id | 否 |
| Object/String | 用来标识元素的id。在UI和表单中为HTML的id属性 |
|
<s:set name="name" value="'god1'"></s:set>
<s:if test="#name=='god1'">
god1
</s:if>
<s:elseif test="#name=='god2'">
god2
</s:elseif>
<s:else>
god3
</s:else>
iterator
名称 | 必需 | 默认 | 类型 | 描述 |
status | 否 |
| String | 如果设置此参数,一个IteratorStatus的实例将会压入每一个遍历的堆栈 |
value | 否 |
| Object/String | 要遍历的可枚举的(iteratable)数据源,或者将放入的新列表(List)的对想 |
id | 否 |
| Object/String | 用来标识元素的id。在ui和表单中为HTML的id属性 |
<%
ArrayList arr = new ArrayList();
arr.add("god1");
arr.add("god2");
arr.add("god3");
request.setAttribute("namelist",arr);
%>
<s:iterator status="item" value="#request.namelist">
<s:if test="#item.odd == true"> --奇数
<font color="red" >1</font>
<s:property/><br />
</s:if>
<s:else>
<font color="green" >2</font>
<s:property/><br />
</s:else>
</s:iterator>
i18n
名称 | 必需 | 默认 | 类型 | 描述 |
name | 是 |
| Object/String | 资源包的类路径(如com.xxxx.resources.AppMsg) |
id | 否 |
| Object/String | 用来标识元素的id。在ui和表单中为HTML的id属性 |
<s:i18n name="fileName"> --资源文件名
<s:text name="god"></s:text> --key 名
</s:i18n>
include
名称 | 必需 | 默认 | 类型 | 描述 |
value | 时 |
| String | 要包含的jsp页面或servlet |
id | 否 |
| Object/String | 用来标识元素的id。在ui和表单中为HTML的id属性 |
<s:include value="/MyJsp.jsp"> --包含页面名称
<s:param name="name">value</s:param> --包含页面需要传入参数
<s:param name="name" value="'value'"/>
</s:include>
Url
<s:url id="url" value="/MyJsp.jsp"> id 为变量名,value 变量页面
<s:param name="name">value</s:param> 传入页面值
</s:url>
<s:a href="%{url}">aaa</s:a> --链接到 id 为url 页面并传入值
param
描述:属性是可选的,如果提供,会调用Component的方法,addParameter(String,Object),如果不提供,则外层嵌套标签必须实现UnnamedParametric接口。
Value的提供有两种方式,通过value属性或者标签中间的text,不同之处:
<s:param name="name">zhaosoft</s:param>
参数会以String的格式放入statck
<s:param name="name" value="zhaosoft"/>
该值会以java.lang.Object的格式放入statck
名称 | 必需 | 默认 | 类型 | 描述 |
name | 否 |
| String | 参数名 |
value | 时 |
| String | value表达式 |
id | 否 |
| Object/String | 用来标识元素的id。在ui和表单中为HTML的id属性 |
set
描述:set标签赋予变量一个特定范围内的值。当希望给一个变量赋一个复杂的表达式,每次访问该变量而不是复杂的表达式时用到。其在两种情况下非常有用:复杂的表达式很耗时(性能提升)或者很难理解(代码的可读性提高)
参数:
名称 | 必需 | 默认 | 类型 | 描述 |
name | 是 |
| String | 变量名字 |
scope | 否 |
| String | 变量作用域,可以为application,session,request,page,action |
value | 否 |
| Object/String | 将会赋给变量的值 |
id | 否 |
| Object/String | 用来标识元素的id。在ui和表单中为HTML的id属性 |
Text
描述:支持国际化信息的标签。国际化信息必须放在一个和当前action同名的resource bundle中,如果没有找到相应message,tag body将被当作默认的message,如果没有tag body,message的name会被作为默认message.
名称 | 必需 | 默认 | 类型 | 描述 |
name | 是 |
| String | 资源属性的名字 |
id | 否 |
| Object/String | 用来标识元素的id。在ui和表单中为HTML的id属性 |
url
描述:该标签用于创建url,可以通过”param”标签提供request参数。
当includeParams的值是all或get,param标签中定义的参数将有优先权,也就是说其会覆盖其他同名参数的值。
UI
<s:checkboxlist
name="a" -–checkbox 统一别名
label="easy" --标签名
labelposition="top" --显示方式
list="{'a','b','c','d','e'}” --内容 lable:a , value:a
></s:checkboxlist>
<br />
<s:bean
name="com.struts2.action.UserDao" --dao 实例化
id="udao” --实例化别名
>
</s:bean>
<s:checkboxlist
name="b" -–checkbox 统一别名
label="easy2" --标签名
labelposition="top" --显示方式
list="#udao.user" –-调用 <s:bean> 实例化变量
listKey="userPwd" –- dao中的item的变量中的:userPwd new User("a","1")
--(userName, userPwd)
listValue="userName" -- dao中的item的变量中的:userName
>
</s:checkboxlist>
<br />
<s:checkboxlist
name="c" -–checkbox 统一别名
label="easy3" --标签名
labelposition="top" --显示方式
list="#{'a':'1','b':'2','c':'3','d':'4','e':'5'}" --map 形式录入
listKey="value" –-map 中的 value
listValue="key" –-map 中的 key
></s:checkboxlist>