程式先锋Java技术维客

JSTL(jsp标准标签库)常用标签用法

四月 08, 2008 by czl
在JSP页面中声明JSTL标签:
<%...@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%...@taglib prefix="x" uri="http://java.sun.com/jsp/jstl/xml"%>
<%...@taglib prefix="i18n" uri="http://java.sun.com/jsp/jstl/fmt"%>
<%...@taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql"%>
<%...@taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/function"%>

核心标签库

  1、流程控制:if,choose,when,otherwise

<c:if test="(这里放一个EL表达式)">xx</c:if>

 
<%...@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>

<c:if test="${!empty param.color}">
    <c:choose>
        <c:when test="${param.color == 'red'}">
            <table bgcolor="red"><tr><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</td></tr></table>
        </c:when>
        <c:when test="${param.color == 'yellow'}">
            <table bgcolor="yellow"><tr><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</td></tr></table>
        </c:when>
        <c:when test="${param.color == 'blue'}">
            <table bgcolor="blue"><tr><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</td></tr></table>
        </c:when>
        <c:otherwise>
            <h2>No choice</h2>
        </c:otherwise>
    </c:choose>
</c:if>
<form>
<input type="radio" name="color" value="red"><font color="red">red</font></input><br>
<input type="radio" name="color" value="yellow"><font color="yellow">yellow</font></input><br>
<input type="radio" name="color" value="blue"><font color="blue">blue</font></input><br>
    <input type="submit"/>
</form>

 

  2、迭代:forEach

 遍历集合

<c:forEach var="i" items="${collection}" varStatus="index">

    ${i} ${index}  <!--i为集合中单个元素,index为循环状态 -->

</c:forEach>

遍历Map

<c:forEach var="m" items="${map}">

  key=${m.key},value=${m.value}

</c:forEach>

打印1到10

<c:forEach var="i" begin="1" end="10" step="1">

  ${i}

</c:forEach>
<%...@page import="tarena.jstl.Student,java.util.*"%>
<%...@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>

<%...
    Collection students = new ArrayList();
    students.add(new Student("001","zhangsan",23));
    students.add(new Student("002","lisi",22));
    students.add(new Student("003","wangwu",21));
   
    request.setAttribute("stus", students);
%>
<table border="1">
<c:forEach var="stu" items="${stus}">
    <tr><td>${stu.id}</td>
        <td>${stu.name}</td>
        <td>${stu.age}</td>
    </tr>
</c:forEach>
</table>
<h2>
<%...
    Map stus = new HashMap();
    stus.put("001", new Student("001","zhangsan",23));
    stus.put("002", new Student("002","lisi",22));
    stus.put("003", new Student("003","wangwu",21));
   
    request.setAttribute("stumap", stus);
%>
<c:forEach var="stu" items="${stumap}">
    ${stu.value.id} ${stu.value.name} ${stu.value.age}<br>
</c:forEach>
<hr>
<c:forEach items="${stus}" varStatus="status">
    ${status.count} ${status.current.name} ${status.current.age}<br>
</c:forEach>
<hr>
<c:forEach var="i" begin="0" end="2" step="1">
    No.${i} ${stus[i].id} ${stus[i].name} ${stus[i].age}<br>
</c:forEach>
</h2>

 



发表一条评论:
  • HTML语法: 启用

Search

 

« 九月 2010
星期日星期一星期二星期三星期四星期五星期六
   
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
  
       
今天

Feeds

Navigation