JSTL标签库的几个常用标签例子
JSTL标签库的几个常用标签例子
要想在web开发中使用JSTL标签库必须得在web应用程序的WEB-INF/lib目录下导入jstl.jar和standard.jar.
不知道为什么会出现<span>,亲们直接忽略就是了。代码都运行通过,希望对大家有些指导意义。
<c:if>
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %><!--默认值,不能更改 -->
<html>
<head>
</head>
<body>
<!-- test="" 条件表达式 var="varName" 存放条件表达式值的变量 scope="{page|request|session|application}"-->
<!-- 满足条件时将执行的代码段 -->
<c:if test="${param.name=='yjm'}" var="result">
hello,yjm!
</c:if>
条件判断结果为:${result}
</body>
</html>
<c:forEach>
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %><!--默认值,不能更改 -->
<html>
<head>
<title>My JSP 'ForEach.jsp' starting page</title>
</head>
<body>
<%
String[] users = {"admin","liubin","guest","user1"};
request.setAttribute("users",users);
%>
<table border=1 width=500>
<tr align=center bgcolor=#dddddd>
<td>内容</td>
<td>索引值</td>
<td>共访问过</td>
<td>是否为第一个成员</td>
<td>是否是最后一个成员</td>
</tr>
<!-- items="collection" collection 代表要被遍历的集合-->
<!-- begin="begin" 开始的位置,必须大于或等于0
end="end" 结束位置,默认为最后一个成员
step="step" 每次循环的增量值,默认为1
var="varname" 指向对当前成员的引用
varStatus="varStatus" 存放当前成员的变量,常用的四个
index:当前成员的索引
count:共访问过的成员总数
first:当前成员是否为第一个成员
last:当前成员是否为最后一个成员
-->
<c:forEach items="${users}" var="user" varStatus="s">
<tr align=center>
<td><c:out value="${user}"/></td>
<td><c:out value="${s.index}"/></td>
<td><c:out value="${s.count}"/></td>
<td><c:out value="${s.first}"/></td>
<td><c:out value="${s.last}"/></td>
</tr>
</c:forEach>
</table>
<c:forEach var="num" begin="1" end="9" step="2">
<c:out value="${num}"/>的平房是:
<c:out value="${num*num}"/><br>
</c:forEach>
</body>
</html>
<c:choose>
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %><!--默认值,不能更改 -->
<html>
<head>
</head>
<body>
<%
Random rnd = new Random();
Integer luck = new Integer(rnd.nextInt(10));
pageContext.setAttribute("luck",luck);
%>
<c:choose>
<!-- test="condition" condition为真时执行里面的代码 -->
<c:when test="${luck==1}">恭喜你中了一等奖!</c:when>
<c:when test="${luck==2}">恭喜你中了二等奖!</c:when>
<c:when test="${luck==3}">恭喜你中了三等奖!</c:when>
</c:choose>
</body>
</html>
<c:forTokens>
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
</head>
<body>
<%
String users="admin#liubin#yjm#guest#user";
request.setAttribute("users",users);
%>
<table border=1 width=500>
<tr align=center bgcolor=#dddddd>
<td>内容</td>
<td>索引值</td>
<td>共访问过</td>
<td>是否为第一个成员</td>
<td>是否是最后一个成员</td>
</tr>
<!-- c:fortakens 和 forEach 类似,唯一的确别在于delims属性 -->
<c:forTokens items="${users}" delims="#" var="user" varStatus="s">
<tr align=center>
<td><c:out value="${user}"/></td>
<td><c:out value="${s.index}"/></td>
<td><c:out value="${s.count}"/></td>
<td><c:out value="${s.first}"/></td>
<td><c:out value="${s.last}"/></td>
</tr>
</c:forTokens>
</table>
</body>
</html>
<c:import>
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
</head>
<body>
<h2>import 标签应用实例</h2>
<!--c:import url="url" content="content" 包含同一个容器上的其他应用程序中的文件,以/开头
var="varname" 存放被包含文件内容的变量 scope="{page|request|session|application} var变量的作用范围"
charEncoding="utf-8" 包含文件内容的编码方式-->
<c:import url="http://www.xiaomi.com" var="result"/>
<br/>
http://www.xiaomi.com的解析结果为:<br>
<textarea rows="70" cols="150">${result}</textarea>
<c:import url="If.jsp" var="result">
<c:param name="name" value="yjm"/>
</c:import>
<br>
<br>
If.jsp?name=yjm 的解析结果为:<br>
<textarea rows="40" cols="100">${result}</textarea>
</body>
</html>
<c:url>
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
</head>
<body>
<c:url value="If.jsp" var="myurl"></c:url>
<a href="${myurl}">if标签应用示例</a>
<c:url value="If.jsp" var="myurl">
<c:param name="name" value="yjm"/>
</c:url>
产生的URL内容为:${myurl}<br><br>
<a href="<c:url value="http://www.xiaomi.com"/>">小米网</a>
</body>
</html>
<c:redirect>
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
</head>
<body>
<c:redirect url="If.jsp">
<c:param name="name" value="yjm"/>
</c:redirect>
<!-- 下面的代码将不再执行 -->
<c:redirect url="if.jsp"></c:redirect>
</body>
</html>