code007.jsp
1<%@ page language="java" contentType="text/html; charset=UTF-8" 2 pageEncoding="UTF-8"%> 3<!DOCTYPE html> 4<html> 5<head> 6<meta charset="UTF-8"> 7<title>包含文件标识</title> 8</head> 9<body> 10 11 <%-- 12 jsp:inclue page="url" flush="false|true" 13 page:用于指定被包含文件的相对路径。 14 flush:可选属性,用于是否刷新缓冲区。默认值为false, 15 如果为true,当前页面输出使用了缓冲区,先刷新缓冲区, 16 再执行包含工作。 17 --%> 18 19 <%-- 20 举例 21 新建一个top.jsp文件,内容如下: 22 <img src="images/banner.jpg"> 23 24 新建一个copyright.jsp文件,内容如下: 25 % 26 String copyright = " All Copyright ©某某公司"; 27 % 28 <table> 29 <tr> 30 <td> %= copyright% </td> 31 </tr> 32 </table> 33 34 新建一个index.jsp的文件,内容如下: 35 body 36 jsp:include page="top.jsp" 37 <table> 38 <tr> 39 <td> </td> 40 </tr> 41 </table> 42 jsp:inclue page="copyright.jsp 43 /body 44 45 前面的代码中,我们学习到include指令,该指令与jsp:include 46 动作标识相同,都是可以包含文件的。但是它们存在差别, 47 48 1.include指令通过file属性指定被包含的文件,file属性不支持任何 49 表达式;jsp:include动作标识通过page 属性指定被包含的文件,支持 50 JSP表达式。 51 52 2.使用include指令时,被包含文件的内容会原封不动的插入包含页中, 53 然后JSP编译器再将合成的文件编译成一个java文件;jsp:include动作 54 标识包含文件时,当执行该标识时,程序会将请求转发,注意是转发,不是 55 请求重定向,到被包含的页面,并将结果输出到浏览器中。编译器会对这些 56 文件分别编译。 57 58 3.在include指令包含文件时,被包含文件和包含文件中不能有重名 59 的变量或方法;而jsp:include动作标识,每个文件单独编译,所以 60 被包含的文件和包含文件中的重名的变量方法不冲突。 61 62 63 --%> 64</body> 65</html>