版权:JavaIT学习室
转载请标明,http://www.javait.org
最近发表了几篇文章都是对在使用Struts2框架中的标签进行一些知识点的归纳。今天这篇文章是对s:if标签和s:set标签进行归纳小结。
首先,我们先来看看s:if标签的小结
(1)、s:if标签是Struts2框架中的控制标签,就是Java中if…else if…else…具有一样的功能,完整格式如下
1 2 3 4 5 6 7 8 9 |
<s:if test="表达式"> 语句1... </s:if> <s:elseif test="表达式"> 语句2... </s:elseif> <s:else> 语句3... </s:else> |
(2)、给大家一个demo看看
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
<body> <h1>s:if标签的用法</h1> <s:set name="price" value="25"></s:set> 价格:<s:property value="#price"/> <p> <s:if test="#price > 20"> 定义的变量price的值是大于20 </s:if> <p> <s:elseif test="#price < 20"> 定义的变量price的值是小于20 </s:elseif> <p> <s:else>定义的变量price的值等于20</s:else> <p> <p> <s:set name="str" value="'新年快乐'"></s:set> 字符串:<s:property value="#str"/> <p> <s:if test="%{#str == '新年快乐'}"> 祝大家2012年,<s:property value="#str"/> </s:if> <p> </body> |
s:set标签是Struts2框架中的数据标签,它主要是用于在JSP页面上定义一个变量,并对变量进行赋值。
(1)语法格式如下:
1 |
<s:set name="xxx" value="表达式|值" scope="session|request|application|page|默认"/>
|
(2)s:set标签的常见用法如下
用法①:
1 |
<s:set name="miloList" value="{‘java’,’php’,’C#’}"/>
|
这个值是一个list容器,迭代使用s:iterator标签,Notice:list、set容器不加”#”,map要加”#”;
用法②:
1 |
<s:set name="miloNum" value="24"/>
|
注意:这个是整型,如果value的值是int或long类型,那么就要在输出的时候加#
输出:
1 |
<s:property value="#miloNum"/>
|
那么如果value是字符串呢?
1 |
<s:set name="miloStr" value="’24’"/>
|
注意:这个是字符串,value中的字符串要加上单引号(‘),这样才说明是字符串。
输出:
1 |
<s:property value="miloStr"/>
|
用法③:用scope属性说明存储范围
request:
1 |
<s:set name="miloVal" value="'24'" scope="request"/>
|
输出:
1 |
<s:property value="#request.miloVal"/>
|
session:
1 |
<s:set name="miloVal" value="'24'" scope="session"/>
|
输出:
1 |
<s:property value="#session.miloVal"/>
|
page:
1 |
<s:set name="miloVal" value="'24'" scope="page"/>
|
输出:
1 |
<s:property value="#attr.minVal"/>
|
相关文章,请参考如下:
1、strut2中利用s:set标签存储字符串常量,http://www.javait.org/?p=794
2、如何解决s:fielderror输出指定错误信息,而不是输出全部错误信息,http://www.javait.org/?p=786