JSTL (全名:java standard tag libarary - java标准标签库 )
使用JSTL标签步骤
1) 导入jstl支持的jar包(标签背后隐藏的java代码)
注意:使用javaee5.0的项目自动导入jstl支持jar包
2)使用taglib指令导入标签库
<%@taglib uri="tld文件的uri名称" prefix="简写" %>
3)在jsp中使用标签
核心标签库的重点标签:
保存数据:
<c:set></c:set>
<c:set var="name" value="rose" scope="request></c:set> 还能指定域对象保存
获取数据:
<c:out value=""></c:out>
<c:out value="${name}"></c:out>从域中拿到字符
<c:out value=null default=""></c:out> 当value值为空时 使用默认值
<c:out value=null defalut="<h3>标题3</h3>" escapeXml="false"></c:out> ecapeXml是否对value值进行转义? false,不转义 , true转义 (默认)
单条件判断
<c:if test="true"></c:if> 如果是true 则执行标签体内的内容 test里面可以写el表达式 只能有一个
多条件判断
<c:choose></c:choose>
<c:when test=""></c:when> when可以多次使用 要多次判断 就多次使用
<c:otherwise></c:otherwise> 否则的意思 就是除了when里面的以外 就这个条件
相当于if ifelse if else
循环数据
<c:forEach></c:forEach>
<c:forEach begin="" end="" step="" items="" var="" varStatus="">
begin 从哪个元素开始遍历
end 到哪个元素结束遍历
step 步长 (每次加几)
items 需要遍历的数据
var 每个元素的名称
varStatus 当前正在遍历元素的状态对象 (count属性: 当前位置 ,从1开始
<c:forTokens items="" delims="" var=""></c:forTokens>
delims里面的切割的内容 可以切割文字
重定向
<c:redirect></c:redirect>
<c:redirect url=""><c:redirect>