JSTL

jsp标准标签库(jstl)是一个JSP标签集合,它封装了jsp应用的通用核心功能。

JSTL支持通用的、格式化的任务。比如:迭代、条件判断、 文档操作、国际化标签、SQL标签。除了这些它还提供了一个框架来使用集成JSTL的自定义标签。

JSTL使用

使用任何库,你必须在每个JSP文件中的头部包含<taglib>标签。

核心标签

核心标签是最常用的JSTL标签。引用核心标签库的语法如下:

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

if标签

<c:if>标签判断表达式的值,如果表达式的值为 true 则执行其主体内容。

语法格式

<c:if test="<boolean>" var="<string>" scope="<string>"> ... </c:if>

属性

<c:if>标签有如下属性:

示例:

<%@ page language="java" contentType="text/html; charset=UTF-8"    pageEncoding="UTF-8"%><%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %><html><head>< >c:if 标签实例</ ></head><body><c:set var="salary" scope="session" value="${2000*2}"/><c:if test="${salary > 2000}">   <p>我的工资为: <c:out value="${salary}"/><p></c:if></body></html>

输出:我的工资为: 4000

输出:weiwei

输出:错误,不会显示

<c:choose>, <c:when>, <c:otherwise> 标签

<c:choose>标签与Java switch语句的功能一样,用于在众多选项中做出选择。

switch语句中有case,而<c:choose>标签中对应有<c:when>,switch语句中有default,而<c:choose>标签中有<c:otherwise>。

语法格式

<c:choose>    <c:when test="<boolean>">        ...    </c:when>    <c:when test="<boolean>">        ...    </c:when>    ...    ...    <c:otherwise>        ...    </c:otherwise></c:choose>

属性

  • <c:choose>标签没有属性。
  • <c:when>标签只有一个属性,在下表中有给出。
  • <c:otherwise>标签没有属性。

<c:when>标签的属性如下:

示例:

<%@ page language="java" contentType="text/html; charset=UTF-8"    pageEncoding="UTF-8"%><%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %><html><head>< >c:choose 标签实例</ ></head><body><c:set var="salary" scope="session" value="${2000*2}"/><p>你的工资为 : <c:out value="${salary}"/></p><c:choose>    <c:when test="${salary <= 0}">       太惨了。    </c:when>    <c:when test="${salary > 1000}">       不错的薪水,还能生活。    </c:when>    <c:otherwise>        什么都没有。    </c:otherwise></c:choose></body></html>

输出:你的工资为 : 4000

<c:forEach>

该标签封装了Java中的for,while,do-while循环。

<c:forEach>迭代一个集合中的对象。

forEach 语法格式

<c:forEach items="< >" begin="<int>" end="<int>" step="<int>" var="<string>" varStatus="<string>"> 属性

<c:forEach>标签有如下属性:

输出:

收藏 打印