随时随地阅读更多技术实战干货,获取项目源码、学习资料,请关注源代码社区公众号(ydmsq666)
JSTL中也提供了与URL相关的标签,分别是<c:import> 、<c:url>、<c:redirect>、<c:param> .<c:param> 标签通常与其他标签配合使用。
1、<c:import>
其与<jsp:include>动作指令类似,不同的是,<jsp:include>只能导入站内资源,而<c:import>还可以导入其他网站的资源。
示例:
index.jsp:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>起始页</title>
</head>
<body style="margin: 0px;">
<c:set var="typeName" value="流行金曲 | 经典老歌 | 热舞DJ | 欧美金曲 | 少儿歌曲 | 轻音乐 | 最新上榜"></c:set>
<c:import url="navigation.jsp" charEncoding="UTF-8">
<c:param name="typeList" value="${typeName}"></c:param>
</c:import>
</body>
</html>
其中导入了navigation.jsp并向其传递参数
navigation.jsp:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>起始页</title>
</head>
<body style="margin: 0px;">
<c:set var="typeName" value="流行金曲 | 经典老歌 | 热舞DJ | 欧美金曲 | 少儿歌曲 | 轻音乐 | 最新上榜"></c:set>
<c:import url="navigation.jsp" charEncoding="UTF-8">
<c:param name="typeList" value="${typeName}"></c:param>
</c:import>
</body>
</html>
2、<c:url>
用于生成一个URL路径的字符串,可以赋予HTML的<a> 标记实现URL的连接,或者用它实现网页转发与重定向等。
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>起始页</title>
</head>
<body>
<c:url var="path" value="result.jsp">
<c:param name="user" value="mr" />
<c:param name="email" value="wgh717@sohu.com" />
</c:url>
<a href="${pageScope.path}">提交注册</a>
</body>
</html>
3、<c:redirect>
不含参数的情况:
<c:redirect url="result.jsp"/>
含参数的情况:
<c:redirect url="FindServlet">
<c:param name="action" value="query"></c:param>
</c:redirect>
4、<c:param> 在其他标签中已经使用,不再讲述。