3.6.3 include

3.6.3 include动作

include动作用来动态地引入另一个资源。可以引入另一个JSP页面,也可以引入一个Servlet或一个静态的HTML页面。

实例

copyright2.jsp:

1
2
3
4
5
<%@ page contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<hr />
&copy;2018 一个麻瓜的网站
<hr />

jspIncludeTest.jsp:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<title>Include action</title>
</head>
<body>
<h2>测试include指令</h2>
<jsp:include page="copyright2.jsp">
<jsp:param name="text" value="How are you?" />
</jsp:include>
</body>
</html>

浏览器显示效果:
这里有一张图片

include指令和include动作的区别

理解include指令和include动作非常重要。

  • 第一个不同的是,对于**include指令,资源的引入发生在页面转换时,即当JSP容器将页面转换为Servlet的时候。而对于include动作,资源的引入发生在请求页面时。因此,使用include动作可以传递参数,而使用include指令无法传递参数。**
  • 第二个不同的是,include指令对引入的文件扩展名没有特殊要求。但对于include动作,若引入的文件需要以JSP页面进行处理,则其文件扩展名必须是JSP。若使用.jspf为扩展名,则该页面将被当作静态文件