2015第37周一struts2 jstl 标签

时间:2021-09-25 01:50:20


1.在jstl中使用struts2 

  1. <c:forEach var="ee" items="${requestScope.serviceList}" >
  2. jstl:<c:out value="${ee.id}"></c:out>
  3. el:${ee.id}
  4. struts2: <s:property value="#attr.ee.id"/>
  5. </c:forEach>

通过struts2标签取jstl标签的变量时,如果有设置scope,可以从scope中取值 
如果没有就需要用#attr来取值 
2.从jstl标签中获取值 

  1. <c:set var="ctime" value="${el.createtime}" scope="request"/>
  2. <c:set var="ctime2" value="${el.createtime}" />
  3. <s:property value="#request.ctime"/>
  4. <s:property value="#attr.ctime2"/>



3.在struts2标签中使用jstl 

  1. <s:iterator value="#request.serviceList" id="bs">
  2. struts2:<s:property value="#bs.keyid"/>
  3. el:${bs.keyid}
  4. jstl:<c:out value="${bs.keyid}"></c:out>
  5. </s:iterator>



4.从struts2标签中取值 

    1. <!-- 数字类型 -->
    2. <s:set name="pp" value="11"></s:set>
    3. struts2:<s:property value="#pp"/>
    4. el:${pp}
    5. jstl:<c:out value="${pp}"></c:out>
    6. <!-- 字符串类型 -->
    7. <s:set name="pp2" value="'abc'" scope="request"></s:set>
    8. struts2:<s:property value="#request.pp2"/>
    9. el:${pp2}
    10. jstl:<c:out value="${pp2}"></c:out>

5. 条件标签 JSTL


<c:if test="${user.password == 'hello'}">     
<c:choose>         
<c:when test="${user.age <= 18}">             
<font color="blue"/>         
</c:when>         
<c:when test="${user.age <= 30 && user.age > 18}">             
<font color="red"/>         
</c:when>         
<c:otherwise>             
<font color="green"/>         
</c:otherwise>     
</c:choose>
</c:if>

STRUTS2:


<s:if test="#user.age <= 18">     
<font color="blue"/>
</s:if>
<s:elseif test="#user.age <= 30 && user.age > 18">     
<font color="red"/>
</s:elseif> 
<s:else>    
<font color="green"/>
</s:else>

6. 迭代标签

JSTL:


<c:forEach var="user" items="${users}">     
<c:out value="${user.userName}"/>
</c:forEach><!-- 迭代固定次数 -->
<c:forEach var="i" begin="1" end="10" step="3">    
<c:out value="${i}"/>
</c:forEach><!-- 这种循环相当于for(int i=1; i<10; i++), 其中step是指迭代的步长,默认为1. -->