•
Include
指令是在
JSP
中包含一个静态的文件,同时解析这个文件中的
JSP
语句。
Include
指令只有一个参数就是要插入文件的相对路径,语法如下:
•
<%@include file="
relativeURL
"%>
•include指令将会在JSP编译时插入一个包含文本或代码的文件,当使用include指令时,这个包含的过程是静态的。也可以理解为不管要插入的文件内容是什么,简单的把其中所有的内容拷贝过来合并成一个新文件,然后提交给JSP服务器做接下来的工作。由此可以看出,如果两个文件中有重复的Java变量或函数定义,那么合并之后编译要出错,html的标签也同样会相互影响,要避免片段文件中有<html><body>之类的全局标签出现。
---------------------------------------------
•
<
jsp:include
>
标签把指定文件插入正在生成的页面。其语法如下:
•
<
jsp:include
page="relative URL" flush="true" /
>
•
所谓动态插入正是相对于前面已经介绍过静态
include
指令,它是在
JSP
文件被转换成
Servlet
的时候引入文件,而这里的
<
jsp:include
>
动作不同,插入文件的时间是在页面被请求的时候。这里被插入的文件是一个完整的
JSP
文件而非片段,把两个
JSP
输出到客户端的结果结合在一起,他们分别被
JSP
服务器转化为两个不同
Java
类,因此不存在变量定义方面的冲突。用
<
jsp:include
>
标签引入文件的效率要稍微差一点,而且被引用文件不能包含某些
JSP
代码(例如不能设置
HTTP
头),但它的灵活性却要好得多。