JSP -- include指令与include动作的区别
(1)格式的区别:
include指令:<%@include file = "文件名"%>
include动作:<jsp:include page = "文件名"/>
(2)语义的区别:
include指令可以在jsp程序中插入多个外部的文件,这些文件可以是jsp、html或java程序,甚至是文本
include动作只会把文件中的输出包含进来,所以在include指令中出现的那种变量名相同的情况,在include动作不会出现问题
注意:
在实际的应用开发过程中,可能会遇到的情况 就是使用include指令的时候把另外的页面包含进本页面,但被包含的页面与本页面哟相同的变量,这时程序就会报错。
include动作还会自动检查被包含的文件的变化。也就是说,当被包含的资源的内容发生变化的时候,使用include指令的话,服务器可能不会检测到,但是include动作则可以在每次客户端发出请求时重新把资源包含进来,也就是进行实时更新。
(3)用法的区别
执行时间上的区别:
<%@ include file="relativeURI"%> 在翻译阶段执行
<jsp:include page="relativeURI" flush="true" /> 在请求处理阶段执行
引入内容的不同:
<%@ include file="fileURI"%> 引入文本(html,jsp),在JSP页面被转化成servlet之前和它融和到一起. <jsp:include page="fileURI" flush="true" /> 引入执行页面或servlet所生成的文本