2020年3月24日 java web第三次作业
指令include和动作include的区别
1.指令include
<%@include file="index.jsp" %>
它就是一种简单的包含以实现代码重用,JSP编译时就会包含进来,不会产生请求。
其他特点:
1)其URL不支持带参数,比如<%@ include file=“xxxxx?var=123” %>就是错误的。
2)写include指令的页面和被包含的页面中,代码中不能有同名变量,否则会报错。
2.动作include
<jsp:include page="index.jsp" />
只有在运行时会产生请求,相当于执行了一段Java代码产生了请求,所以会自动检查被包含内容的变化,即时更新结果。
其他特点:
1)URL支持带参数,语法如下:
<jsp:include page="index.jsp">
<jsp:param name="PARAM_NAME" value="PARAM_VALUE">
</jsp:include>
2)写include动作的页面和被包含的页面中,代码中可以有同名变量,因为二者之间是请求和被请求的关系,页面代码在请求之前已经编译好了。
区别:两者的作用都是处理所需要的文件,但处理方式和处理时间不同。
include指令标记是在编译阶段就处理所需要的文件,被处理的文件在逻辑和语法上依赖于当前的jsp页面,优点是执行速度快。
include动作标记在jsp页面运行时才被处理的文件,被处理的文件在逻辑和语法上独立与当前的JSP页面,其优点是可以使用param子标记更灵活的处理所需要的文件,缺点是执行要慢一点
参考来源:百度