JSP页面中引入其他JSP的方法

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/cjmust/article/details/83186182

有两种方法
<%@ include file="other.jsp" %><jsp:include page="other.jsp"/>

前者是使用指令的方式,编译时,编译器将被包含的JSP文件的内容替换include指令,合并后的JSP文件转换为Java代码并编译

后者是使用jsp标签,而且是先将JSP文件转换为Java代码,出现了如下代码

org.apache.jasper.runtime.JspRuntimeLibrary.include(request, response, "index.jsp", out, false);

该代码是将请求和响应对象传递到另一个方法中,然后该方法将运行被包含的JSP,将结果输出到响应对象中,返回。

两种方法各有利弊:

  • include指令的方式速度快,并且被引用JSP文件可以引用主JSP文件中定义的所有变量,但是该方法会导致JSP文件变量(需要注意的是,Java方法编译后的字节数不能超过65534字节)
  • jsp include标签就不会引发该问题,因为它是每次页面加载时动态计算的,并且被包含的JSP文件不能使用主JSP文件中定义的变量。

猜你喜欢

转载自blog.csdn.net/cjmust/article/details/83186182