include指令和<jsp:include>标准动作

Posted 十三弦

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了include指令和<jsp:include>标准动作相关的知识,希望对你有一定的参考价值。

  利用JSP的包含机制,可以有效的避免重复,把可重用的部分独立出去,使用include把它们包含到当前文件。JSP有两种包含机制:include指令和<jsp:include>标准动作。

1.include指令

2.<jsp:include>标准动作

3.内部原理

  include指令和<jsp:include>标准动作看上去一样,而且通常有相同的效果,但是它们生成的servlet代码并不相同。

  include指令在转换时发生,它就像把被包含的文件复制到当前文件一样;<jsp:include>标准动作在运行时发生,它在运行时插入“Header.jsp”的响应。

4.性能比较

  如果能够保证所包含的文件不再改变,那就应该使用include指令。不过使用指令会使生成的servlet类较大。

  而<jsp:include>标准动作会带来额外的性能开销,容器要根据页面属性创建一个RequestDispatcher,并应用include()方法,所包含的JSP针对同样的请求和响应对象执行,而且在同一线程中。

5.使用<jsp:param>定制包含的内容

  如果希望在包含页面时向被包含的页面传递参数,可以使用<jsp:param>传递参数:

  如果使用<jsp:include page="Header.jsp"></jsp:include>,即<jsp:include>体为空,则会报错。如果没有体,只能使用<jsp:include page="Header.jsp"/>的形式。

  <jsp:param>只能放在<jsp:include>或<jsp:forward>标准动作中。

6.第三种包含内容的方法

  使用JSTL的<c:import>标签,也可以将一个资源的内容增加到一个JSP中。不同于另外两种包含机制,<c:import>中的url可以来自web容器范围之外。

  用<c:import>和<c:param>标签,可以完成和<jsp:include>和<jsp:param>一样的功能。

 使用<c:import>和<c:param>

 

以上是关于include指令和<jsp:include>标准动作的主要内容,如果未能解决你的问题,请参考以下文章

JSP(Java Server Page) JSP指令与动作元素

include指令和动作的区别

jsp七大动作指令

JSP include 指令

jsp基础语言-jsp指令

[JSP include使用上下文属性的指令