若是记不清了,直接打开 jstl.jar META-INF下面的c.tld文件。便可以查看具体声明的标签。
jsp上方:
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>导入
1.<c:out value="<a href=''>点</a>" default="未有输入值" escapeXml="true" ></c:out>
若输出值为空,则打印default中值,escapeXml若为true,则将待打印的部分转义。
<c:out value="<a href='#'>点我</a>" escapeXml="true"></c:out>
<a href='#'>点我</a>
<%
request.setAttribute("data",null);
%>
<c:out value="${data}" default="aaa" escapeXml="true"></c:out>
2.<c:set></c:set>可以给 javabean ,map 或者某个域(比如request) 的属性赋值。
它还可以获取request传入的参数,并对request设置属性,如:
<%
String credit=request.getParameter("credit");
request.setAttribute("credit", credit);
%>
<c:set var="credit" scope="request" value="${param.credit}"></c:set>
与此对应的还有<c:remove var="varName" scope="{page|request|session|application}">移除某个域中的属性。
<%
request.setAttribute("aaa", 123);
%>
<c:set var="data" scope="request" value="234">
</c:set>
${aaa}
<%
Stu s=new com.Stu();
request.setAttribute("s", s);
%>
<c:set target="${s}" property="name" value="hhh"></c:set>
${s.name}
<%
Map map=new HashMap();
request.setAttribute("map", map);
%>
<c:set target="${map}" property="w" value="h"></c:set>
${map.w}
3.<c:catch>用与捕获异常,并存在var中,可以打印出来
<c:catch var="excep">
<%
int i=1/0;
%>
</c:catch>
${excep.message}
4.<c:if>标签,可以把结果保存到某个域,把test表达式结果赋给var中的变量,在scope域中
<c:if test="true" var="re" scope="request"></c:if>
${re}
5.<c:choose>标签,类似switch case
6.<c:forEach>是可以遍历list的,里面有step步长,开始index(begin)与结束index(end)。同时,可以设置每次遍历的样式,varStatus保存的值有 count 属性,记录当前是第几次遍历。
<%
List<String> list =new ArrayList<String>();
list.add("a");
list.add("b");
list.add("c");
list.add("d");
list.add("e");
list.add("f");
%>
<c:set var="list" scope="request" value="<%=list %>"></c:set>
<style>
.odd{background-color:#FF99FF;}
.even{background-color:#FF6633;}
tr:HOVER{background-color:#0000FF;}
</style>
<table border="1" width="30%">
<c:forEach items="${list}" var="obj" step="1" begin="0" end="8" varStatus="times">
<tr class="${times.count%2==0?'odd':'even'}"><td>${obj}</td></tr>
</c:forEach>
</table>
若是无法支持tr:hover 则需要修改文档声明,将其修改为较高版本的
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
7.<c:param>嵌套在<c:url> 或<c:redirect>标签内,携带参数
8.<c:url>标签
<c:url>标签可以对链接加上项目名称,并且可以携带为中文的参数,对其进行编码。
9.<c:redirect>标签,可以实现重定向。<c:url var="in" value="/index.jsp"> <c:param name="name" value="中国"></c:param> </c:url> <a href="${in}">点我</a>