1.概述
JSTL(JSP Standard Tag Library),JSP标准标签库,可以嵌入在jsp页面中使用标签的形式完成业务逻辑等功能。jstl出现的目的同el一样也是要代替jsp页面中的脚本代码。JSTL标准标准标签库有5个子库,但随着发展,目前常使用的是他的核心库
标签库 | 标签库的URI | 前缀 |
Core | http://java.sun.com/jsp/jstl/core | c |
I18N | http://java.sun.com/jsp/jstl/fmt | fmt |
SQL | http://java.sun.com/jsp/jstl/sql | sql |
XML | http://java.sun.com/jsp/jstl/xml | x |
Functions | http://java.sun.com/jsp/jstl/functions | fn |
2.使用
导包:
使用jsp的taglib指令导入核心标签库
3.JSTL核心库的常用标签
(1) <c:if test=””>标签
其中test是返回boolean的条件
jstl标签经常会和EL表达式配合使用
demo:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<!--test是返回boolean的条件 -->
<c:if test="${1==1 }">
xxxxx
</c:if>
<c:if test="${1!=1 }">
yyyyy
</c:if>
<!-- 输出的是xxxxx -->
</body>
</html>
(2) <c:forEach>标签
使用方式有两种组合形式:
遍历List<String>的值
遍历List<User>的值
遍历Map<String,String>的值
遍历Map<String,User>的值
遍历Map<User,Map<String,User>>的值
entry.key-----User
entry.value------List<String,User>