包含文件标识
语法:
子动作标识:
作用:JSP的动作标识
参数说明:url指被包含文件的相对路径;
注意:在应用
例子:
include动态包含实例:
<jsp:include page="include-动态01.jsp"></jsp:include>
<h2>主体内容</h2>
<jsp:include page="include-动态02.jsp"></jsp:include>
</body>
</html>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>//include-动态01.jsp文件
<html>
<head>
<title>include静态包含</title>
</head>
<body>
<h2>头部内容</h2>
</body>
</html>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>//include-动态02.jsp文件
<html>
<head>
<title>Title</title>
</head>
<body>
<h2>尾部内容</h2>
</body>
</html>
运行结果:
其实除了该标签,使用“<%@include file=”被包含的jsp文件”%>; //静态包含”也可以达到一样的效果,两者的对比如下:
(1)动态包含相当于调用了被包含的jsp文件,编译时生成多个源码文件
(2)jsp:include标签之间不能有任何内容(除非要传递参数2)
(3)使用动态包含传递参数的情况:
<%@include file=”被包含的jsp文件”%>的特点:
(1)将内容进行直接的替换
(2)编译时就只会生成一个源码文件,最终内容在全部在jspservice方法中(源码文件)
(3)不能出现同名变量
(4)执行效率高,耦合度高,不够灵活
请求转发标识
语法:
子动作标识:
作用:通过该标识可以请求转发到其它的Web资源,如:jsp页面、HTML页面、servlet等等。执行请求转发之后,当前页面将不被执行,而是去执行该标识指定的目标页面。
参数说明:url指被包含文件的相对路径;
传递参数标识
语法:
作用:该标识可以作用其它标识(
例子:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>index页面</title>
</head>
<body>
<jsp:forward page="test.jsp">
<jsp:param name="name" value="I am come form index.jsp"/>
</jsp:forward>
</body>
</html>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>test页面</title>
</head>
<body>
name的值:${param.name}
</body>
</html>
运行结果: