include标签与include指令的比较

原创 2007年09月13日 14:43:00

很早以前学习Jsp时就对include指令与inclue标签之间的异同搞的不是很清楚,因为毕竟用起来感觉差不多的,今天特地查了下资料,总的来说它们之间的差别是非常微妙的,可以用如下一句话概括:<%@ include %>指令会首先找到要包含的目标文件,然后把它插入到我们的JSP页面中,就像我们将目标文件中的内容复制粘贴过来了一样;而<jsp:include>则恰恰相反,它是在JSP页面执行的时候才去寻找目标文件,在具体的行为上有如下差别:

1.假设页面A通过include指令包含了页面B,那么B页面所发生的变化直到A页面发生变化时才会被注意到。这和JSP引擎的机制是有关的。使用include指令时,页面A在每次编译的时候才将页面B中的内容包含进来,然后再一起编译。如果B发生了变化,A没有发生变化,那么JSP引擎不会重编译A页面,因此B中发生的变化不会被注意到。仅当A发生了变化的时候,JSP引擎才会重新编译A页面,这个时候A再把B包含进来,JSP引擎才会注意到B页面中发生的变化。

2.使用inclue指令时,它所包含的文教案仅限于文本以及JSP片段,这时因为include指令就相当于把所包含文件中的内容直接copy了过来。如果你包含别的东西,会导致JSP页面编译出错,或者所包含的内容无效。

3.一般来说,大多数情况下include指定比include标签效率更高,但是两者之间效率上的差别并不重要。

4.如果使用<jsp:include>标签让页面A包含页面B,那么AB是两个独立的页面,它们可以为不同的变量使用同一个变量名或者为同一个标签库使用不同的前缀,这不会冲突。而如果使用<%@ include %>则不能这么做了,因为使用include指令的话,AB在编译之前实际上已经合并在一起了。

 

相关文章推荐

JSP--JSP语法--指令--include(动态包含/静态包含)--九大隐式对象--四大域对象--JSP内置标签--JavaBean的动作元素--MVC三层架构

一.JSP 原理:JSP其实就是一个servlet。 Servlet负责业务逻辑处理,JSP只负责显示。开发中,JSP中不能有一行JAVA代码   二.JSP语法 1.    JSP模板元素...

jsp include指令标签

如果需要在JSP页面内某处整体嵌入一个文件,就可以考虑使用这个指令标签。该指令标签如下: 该指令标签的作用是在JSP页面出现该指令的位置处,静态插入一个文件。被插入的必须是可访问的和可使用的,即该文...

<jsp:include>标签 和 include 指令的比较

• 标签 和 include 指令的比较

<jsp:include>标签 与include指令的比较

标签是在当前JSP页面的执行期间插入被引入资源的输出内容,当前JSP页面与被动态引入的资源是两个彼此独立的执行实体,被动态引入的资源必须是一个能独立被WEB容器调用和执行的资源。include指令只能...

Include和merge标签使用

  • 2014年12月24日 17:21
  • 808KB
  • 下载

JSP基础语法-include指令

  • 2012年09月25日 10:18
  • 568KB
  • 下载

关于jsp的静态include和动态include以及forword标签和param指令

1、静态include使用出现的乱码问题 在教程上看到说静态include一个文件的时候原jsp文件会将两个文件的内容合并然后编译,所以 在新的文件中就会出现两遍以上从而导致编译错误。也就说明了类...

样式与include标签的使用

  • 2015年09月19日 23:50
  • 917KB
  • 下载

include标签的使用

  • 2014年08月20日 17:07
  • 1.26MB
  • 下载

JSP指令和动作元素-include taglib(六)

常用的有page、include、taglib指令这三种指令; page:位于页面顶端,一个页面可以包含多个page指令 include:将一个外部文件嵌入jsp中,同时解析这个页面中的jsp语句...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:include标签与include指令的比较
举报原因:
原因补充:

(最多只允许输入30个字)