JSP中有两种方式可以把指定的jsp程序或者html文件包含进来,分别为一下两种形式:
1.静态包含:<%@ include file=”fileURL” %>
属于编译期间指令。JSP Engine会在JSP程序的转换时期先把fileURL设定的文件包含进来,然后再开始执行转换,编译等工作(把fileURL指向的文件原封不动的放到本文件中间后再转换、编译)。无论是包含JSP文件还是html文件整个过程中只生成一个servlet文件。它不可以用于传递参数,即<%@ include file=”fileURL?user=aaa” %>是错误的,会导致程序编译找不到文件。
2.动态包含:<jsp:include page=”URLSpec” flush=”true”/>
或<jsp:include page=”URLSpec” flush=”true”>
<jsp:param name=”paramName” value=”paramValue”>
</jsp:include>
属于运行期间指令。该指令在转换时期是不会被编译的,只有在客户端请求时期如果被执行到,才会被Tomcat等JSP Engine等编译,否则将不会被编译。如果包含的是动态页面(如JSP)则会生成两个servlet文件;但是如果包含的是静态文件(如html文件),则整个过程也只产生一个servlet文件。但它可以带参数执行。
时间: 2024-10-08 19:51:54