include指令和动作元素include的区别

1)格式的区别:

1 include指令:<%@include file = "文件名"%>
2 include动作:<jsp:include page = "文件名"/>

2)语义的区别:

include指令可以在jsp程序中插入多个外部的文件,这些文件可以是jsphtmljava程序,甚至是文本

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所生成的文本 

1.include指令     include可以在JSP页面转换成Servlet之前,将JSP代码插入其中。它的主要优点是功能强大,所包含的代码可以含有总体上影响主页面的JSP构造,比如属性、方法的定义和文档类型的设定。它的缺点是难于维护只要被包含的页面发生更改,就得更改主页面,这是因为主页面不会自动地查看被包含的页面是否发生更改。

语法:<%@ include file="sample.jsp" %>

2.include动作     jsp:include动作是在主页面被请求时,将次级页面的输出包含进来。尽管被包含的页面的输出中不能含有JSP,但这些页面可以是其他资源所产生的 结果。服务器按照正常的方式对指向被包含资源的URL进行解释,因而这个URL可以是Servlet或JSP页面。服务器以通常的方式运行被包含的页面, 将产生的输出放到主页面中,这种方式与RequestDispatcher类的include方法一致。它的优点是在被包含的页面发生更改时,无须对主页 面做出修改。它的缺点是所包含的是次级页面的输出,而非次级页面的实际代码,所以在被包含的页面中不能使用任何有可能在整体上影响主页面的JSP构造。

语法: <jsp:include page="sample.jsp" flush="true"> <jsp:param name="name" value="value"/> </jsp:include>

   其中参数设置可以没有,如果没有参数设置,则必须采用<jsp:include page="sample.jsp" flush="true"/>形式

3. 使用include动作还是include指令?

  使用include指令,如果被包含的文件发生改变,那么,用到它的所有Jsp页面都需要更新。

  仅当include动作不能满足要求时,我们才应该使用include指令。

  有 些开发人员认为include指令生成的代码执行起来比使用include动作的代码更快。尽管原则上由可能的确如此,但性能上的差异很小,以致难以测 量,同时,include动作在维护上的优势十分巨大,当两种方法都可以使用时,include动作几乎肯定是首选的方法。

  对于文件包含,应该尽可能地使用include动作。仅在所包含的文件中定义了主页面要用到的字段或方法,或所包含的文件设置了主页面的响应报头时,才应该使用include指令。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值