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

                        微笑在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"%> java


核心标签库 

  一、流程控制: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> 

二、迭代: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>
sql