struts2 使用总结

1、遍历基础类型的数组或集合:

 

<s:iterator value="#valList" var="sj" status="st2" >
	<td align="right"> ${valList[st2.index] } </td>
</s:iterator>

     此处也可写成

 

<s:iterator value="#valList" var="sj" status="st2" >
	<td align="right"> ${sj } </td>
</s:iterator>

     但是这种写法当双重遍历的时候,也就是<s:iterator/>嵌<s:iterator/>的时候,sj的值不会自动重新初始化,导致下一次外部循环的时候sj的值还是上一次最后一次遍历时的值。

 

 

2、判断集合是否为空

 

<s:if test="domain.list == null || domain.list.isEmpty()">
....
</s:if>

 

3、s:if 标签的test遇到的问题

     在用s:if 的test做字符串等于判断时遇到了判断不准确的问题,判断结果全为false,原写法如下:

    

<s:if test="#entity.lx == '1'">基础类型</s:if>
<s:elseif test="#entity.lx == '0'">特殊类型</s:elseif>

   后尝试着把比对的字符串用双引号引起来之后就正确了,代码如下:

  

<s:if test='#entity.lx == "1"'>基础类型</s:if>
<s:elseif test='#entity.lx == "0"'>特殊类型</s:elseif>

    这个问题不知道是struts2就这样规定的,还是算是一个bug,反正用起来感觉不太方便。

 

你可能感兴趣的:(struts2)