JSP&Servlet学习笔记-9

JSTL(JSP Standard Tag Library ,JSP 标准标签库)
  1. 拷贝jar包
  2. JSTL核心标签库
c:out 内容输出标签;
c:set 用来设置 4 种属性范围值的标签;
c:remove 用来删除指定范围中的属性;
c:catch 用来处理程序中产生的异常;
c:if 用来条件判断;
c:choose、c:when、c:otherwise 用来多条件判断;
c:forEach 用来遍历数组或者集合;
c:fortokens 分隔输出;
c:import 导入页面;
c:url 生成一个 url 地址;
c:redirect 客户端跳转
  • 例子1
<%@ 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>
<html>
<head>
<meta charset="utf-8">
<title>Insert title here</title>
</head>
<body>
	<%
		pageContext.setAttribute("who", "我");
	%>
	<h2><c:out value="输出一个"></c:out></h2>
	<h2><c:out value="${who }"></c:out></h2>
	<h2><c:out value="${my }" default="张曼玉"></c:out></h2>
	
	<c:set var="man" value="钢铁侠" scope="request"></c:set>
	<h2><c:out value="${man }"></c:out></h2>
	
    <c:set var="girlfriend" value="黑寡妇" scope="request"></c:set>
	<h2><c:out value="${girlfriend }"></c:out></h2>
	<c:remove var="girlfriend" scope="request"></c:remove>
    <h2><c:out value="${girlfriend }" default="没有了"></c:out></h2>
</body>
</html>
  • 例子2
<%@ 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>
<html>
<head>
<meta charset="utf-8">
<title>Insert title here</title>
</head>
<body>
	<jsp:useBean id="girl" class="com.beeworkshop.model.Girl"></jsp:useBean>
	<c:set property="id" target="${girl }" value="1"></c:set>
	<c:set property="name" target="${girl }" value="周慧敏"></c:set>
	<c:set property="age" target="${girl }" value="28"></c:set>
	<h2>编号:${girl.id }</h2>
	<h2>姓名:${girl.name }</h2>
	<h2>年龄:${girl.age }</h2>
</body>
</html>
  • 例子3
	<c:catch var="errMsg">
		<%
			int a = 1 / 0;
		%>
	</c:catch>
	<h2>异常信息:${errMsg }</h2>
  • 例子4
	<jsp:useBean id="girl" class="com.beeworkshop.model.Girl"></jsp:useBean>
	<c:set property="id" target="${girl }" value="1"></c:set>
	<c:set property="name" target="${girl }" value="周慧敏"></c:set>
	<c:set property="age" target="${girl }" value="38"></c:set>

	<c:if test="${girl.name=='黑寡妇' }" var="r" scope="page">
		<h2>是黑寡妇</h2>
	</c:if>
	<c:if test="${girl.age>30 }">
		<h2>太老啦</h2>
	</c:if>
  • 例子5
    <c:choose>
        <c:when test="${girl.age>18 } ">
            <h2>大于18</h2>
        </c:when>
        <c:when test="${girl.age>25 } ">
            <h2>大于25</h2>
        </c:when>
        <c:when test="${girl.age>30 } ">
            <h2>大于30</h2>
        </c:when>
        <c:otherwise>
            <h2>太小</h2>
        </c:otherwise>
    </c:choose>
  • 例子6
<%
		String[] builty = { "黑寡妇", "周慧敏", "王祖贤", "如花", "灭绝师太" };
		pageContext.setAttribute("builty", builty);
	%>
	<c:forEach var="girl" items="${builty }">
        ${girl }<br/>
    </c:forEach>
  • 例子6
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ page import="com.beeworkshop.model.Girl"%>
<%@ page import="java.util.*"%>
...
	<%
		List<Girl> list = new ArrayList<Girl>();
		list.add(new Girl(1, "黑寡妇", 22));
		list.add(new Girl(2, "周慧敏", 26));
		list.add(new Girl(3, "王祖贤", 27));
		list.add(new Girl(4, "如花", 28));
		list.add(new Girl(5, "灭绝师太", 35));
		pageContext.setAttribute("list", list);
	%>
	<table>
		<tr>
			<th>编号</th>
			<th>姓名</th>
			<th>年龄</th>
		</tr>
		<c:forEach var="girl" items="${list }">
			<tr>
				<td>${girl.id }</td>
				<td>${girl.name }</td>
				<td>${girl.age }</td>
			</tr>
		</c:forEach>
	</table>
  • 例子7
	<%
		String str1 = "www.beeworkshop.com";
		String str2 = "春香,秋香,冬香";
		pageContext.setAttribute("str1", str1);
		pageContext.setAttribute("str2", str2);
	%>
	<c:forTokens items="${str1 }" delims="." var="s1">
        ${s1 }<br />
	</c:forTokens>
	<c:forTokens items="${str2 }" delims="," var="s2">
        ${s2 }<br />
	</c:forTokens>
  • 例子8
	<c:import url="jstl6.jsp"></c:import>
	
	<c:url value="www.beeworkshop.com" var="url">
	   <c:param name="name" value="bee"></c:param>
	   <c:param name="sex" value="male"></c:param>
	</c:url>
	<a href="${url }">生成了一个地址</a>

生成的地址:http://localhost:8080/HeadFirstJspServlet1/www.beeworkshop.com?name=bee&sex=male

  • 例子9
	<c:redirect url="jstl5.jsp">
		<c:param name="name" value="bee"></c:param>
		<c:param name="sex" value="male"></c:param>
	</c:redirect>

访问页面发生跳转:http://localhost:8080/HeadFirstJspServlet1/jstl5.jsp?name=bee&sex=male
可以使用内置对象param接收参数:

	<h1>姓名:${param.name }</h1>
	<h1>性别:${param.sex }</h1>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值