include在jsp的开发中作用是拼接页面,不过有两种拼接方法,分别为指令和动作,不过他们最终想要达到的效果其实是一样的,我们用效率较高的指令就好,除非是特殊情况
我们常用的拼接方法,叫做指令,也叫做静态包含,用法如下
<%@ include file="xxx.jsp"%>
这个是jsp本身就有的一个东西,它常出现在jsp开发中有共用代码的地方,它的使用要注意如下几点
- 包含文件中,在哪里写指令,就从哪里开始包含被包含文件
- 被包含文件不需要做特殊处理
- 被包含文件在被包含时,file属性中不可以有参数,如xxx.jsp?a=123
- 在源码编译时合并编译,将所有内容一起编译,生产的class文件只有一个
- 包含之后可以看做是一个全新的jsp文件,也就意味着两个文件中不能有重复的如id等特殊意义的代码,以及两个文件中的内容时可以相互访问到的
- 使用时服务器响应速度快
另一种叫做动作
<jsp:include page=”xxx.jsp” flush=”true”/>
在使用上和指令很相似,但是也有不同事项如下
- 编译的结果会有两个class文件
- 相比较于指令,它是在两个文件分别编译之后,向page所指的地址发出了请求,将结果包含了起来,这个叫动态包含
- 在使用上,两个文件的资源也是互通的,因此也不要出现除重复的特殊代码
- 使用时服务响应速度,比指令慢,这也是基本不用动作的原因