JSTL(JSP Standard Tag Library,JSP标准标签库)是一个不断完善的开放源代码的JSP标签库,是由apache的jakarta小组来维护的。JSTL1.0 由四个定制标记库(core、format、xml 和 sql)和一对通用标记库验证器组成。
如果要使用JSTL,则必须引用jstl.jar和 standard.jar两个包。
优点
使用方法,需要引入标签库
<%@taglib uri="http://java.sun.com/jsp/jstl/core"prefix="c"%> <%@taglib uri="http://java.sun.com/jsp/jstl/fmt"prefix="fmt"%> <%@taglib uri="http://java.sun.com/jsp/jstl/xml"prefix="x"%> <%@taglib uri="http://java.sun.com/jsp/jstl/sql"prefix="sql"%> <%@taglib uri="http://java.sun.com/jsp/jstl/functions"prefix="fn"%>
<c:if>
// 判空 <c:if test="${empty a}"> 空 </c:if> <c:if test="${not empty a}"> 非空 </c:if> //判断相等 <c:if test="${a eq b}"> 相等 </c:if> <c:if test="${!(a eq b)}"> 不相等 </c:if> //不使用jstl判断,使用三目表达式输出 ${!(a eq b) ? "两者不相等" : "两者相等"} ${not empty name ? "不为空" : "为空"} //判断多个条件 <c:if test="${a!=b && a!=c}"></c:if> <c:if test="${a==b || a==c}"></c:if>
fn:contains
<c:if test="${fn:contains(selectCourseStudyIDs, item.courseNumber)}">课程已选,不能重复选课</c:if> <c:choose> <c:when test="${fn:length(course.teacherName) > 4}"> ${fn:substringBefore(course.teacherName,'/')}... </c:when> <c:otherwise> ${course.teacherName } </c:otherwise> </c:choose>