使用
1.下载 jstl 标签库 jar 包
2.将 jstl 中的 jstl.jar 和 standard.jar 复制到 WEB-INF/lib 下
3,在页面导入
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
核心标签库
1.c:out 输出信息到页面
escapeXml=true ,输入内容按照原样输出
<c:out value="hello"/>
<%
request.setAttribute("name", "tom");
%>
<c:out value="<font color='red'>${name}</font>" escapeXml="true"></c:out>
2.c:set
scope 用法--> 设置值
<c:set value="hello" var ="s" scope="request"/>
相当于
<% request.setAttribute("s", "hello"); %>
target property 用法--> 对某个对象属性修改
新建一个 Person 类
public class Person {
String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
jsp 页面新建 Person 对象 p
<%
Person p = new Person();
p.setName("tom");
request.setAttribute("p", p);
%>
<c:set target="${p}" property="name" value="syy"/>
相当于
<%
((Person)request.getAttribute("p")).setName("123");
%>
3.c:remove 删除范围内数据
<c:set var="s" value="tome" scope="request"/>
<c:remove var ="s" scope="request"/>
${empty s}
4.c:catch 获取异常
<c:catch var="e">
<%
int a=1/0;
%>
</c:catch>
${e}
5.c:if 如果 test 的属性值为 true 会执行标签体中内容
<%
session.setAttribute("username", "syy");
%>
<c:if test="${!empty sessionScope.username}">
hello
</c:if>
<c:if test="${empty sessionScope.username}">
not login
</c:if>
6.c:choose c:when c:otherwise 相当于 switch case
<%
int a=1;
switch (a){
case 1:out.write("1");break;
case 2:out.write("2");break;
default: out.write("error"); break;
}
%>
相当于
<c:set value="1" var="a"/>
<c:choose>
<c:when test="${a==1}">
<c:out value="1"/>
</c:when>
<c:when test="${a==2}">
<c:out value="2"/>
</c:when>
<c:otherwise>
<c:out value="error"></c:out>
</c:otherwise>
</c:choose>
7.c:forTokens 切割字符串
<c:set var="str" value="a,b,c"/>
<c:forTokens items="${str}" delims="," var="s">
${s}<br/>
</c:forTokens>
8.c:import 相当于 include
<c:import url="hello.jsp"></c:import>
9.c:url 标签将 URL 格式化为一个字符串,然后存储在一个变量中
<c:url context="/jstlDemo" value="/index.jsp" var="myurl"/>
<a href="${myurl}">
url
</a>
10.c:param 参数操作
<c:url context="/jstlDemo" value="/index.jsp" var="myurl">
<c:param name="name">syy</c:param>
</c:url>
<a href="${myurl}">
url
</a>
11.c:redirect 重定向
<c:redirect url="http://www.syyblog.me/blog"></c:redirect>
12.c:forEach
基本
<c:forEach begin="1" end="10" step="1" var="num">
${num}
</c:forEach>
对数组
<%
String[] str={"1","2","3"};
request.setAttribute("str", str);
%>
<c:forEach items="${str}" var="s">
${s}
</c:forEach>
对 map
<%
Map<String,String> map = new HashMap<String,String>();
map.put("1","a");
map.put("2","b");
map.put("3","c");
request.setAttribute("map", map);
%>
<c:forEach items="${map}" var="m">
${m.key} ${m.value}<br>
</c:forEach>
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于