<%@ page language= "java" contentType="text/html;charset=UTF-8" %>
<html>
<head>
<meta charset="utf-8">
<title>JSPinclude动作实例</title>
</head>
<body>
<%@ include file = "Static.txt" %>
<jsp:include page="Dyamic.jsp" flush="true"></jsp:include>
</body>
</html>
Static.txt————————————————————————————————————————
<%@ page language= "java" contentType="text/html;charset=UTF-8" %>
<form action="JSPIncludeActiveDemo.jsp" method=post>
用户名: <input type=text name=name><br>
密码: <input type=password name=password><br>
<input type=submit value=登录>
</form>
Dyamic.jsp————————————————————————————————————————
<%@ page language= "java" contentType="text/html;charset=UTF-8" %>
<br>
用户名:<%=request.getParameter("name") %>
<br>
密码:<%=request.getParameter("password") %>
<br>
include指令与<jsp:include>动作的区别:
- include指令通过file属性来指定被包含的页面。<jsp:include>动作通过page属性来指定被包含的页面。
- 使用include指令,被包含的文件被原封不动的插入到包含页面中使用该指令的位置,然后JSP编译器再对这个合成的文件进行编译,所以在一个JSP页面中使用include指令来包含另一个JSP页面,最终编译后的文件只有一个。(静态包含)
使用<jsp:include>动作包含文件时,当该动作标识执行后,JSP程序会将请求转发到(注意不是重定向)被包含页面,并将执行结果输出到浏览器中,然后返回页面继续执 行后面的代码,以为web容器执行的两个文件,所以JSP编译器会分别对这两个文件进行编译。(动态包含)
注意:(使用<jsp:include>动作通常是包含那些经常改动的文件,因为被包含的文件改动不会影响到包含文件,因此不需要对包含文件进行重新编译)