/c:choose/、/c:when/和/c:otherwise/在一起连用,可以实现Java语言中的if-else语句的功能。例如以下代码根据username请求参数的值来打印不同的结果:
1. <c:choose>
2. <c:when test="${empty param.username}">
3. Nnknown user.
4. </c:when>
5. <c:when test="${param.username=='Tom'}">
6. ${param.username} is manager.
7. </c:when>
8. <c:otherwise>
9. ${param.username} is employee.
10. </c:otherwise>
11. </c:choose>
以上标签等价于以下Java程序片段:
1. <%
2. String username=request.getParameter("username");
3. if(username==null){
4. //对应第一个<c:when>标签的主体
5. out.print("Nnknown user.");
6. }else if(username.equals("Tom")){
7. //对应第二个<c:when>标签的主体
8. out.print(username+" is manager.");
9. }else{
10. //对应<c:otherwise>标签的主体
11. out.print(username+" is employee.");
12. }
13. %> |
/c:choose/、/c:when/和/c:otherwise/标签的使用必须符合以下语法规则:
c:when>和c:otherwise>不能单独使用,它们必须位于c:choose>父标签中。
在c:choose>标签中可以包含一个或多个标签。
在c:choose>标签中可以不包含c:otherwise>标签。
在c:choose>标签中如果同时包含c:when>和c:otherwise>标签,那么c:otherwise>必须位于c:when>标签之后。
转自:http://tech.ccidnet.com/art/3737/20100919/2192485_1.html