一、 <%@ include file="header.inc"%>

  • 该指令在编译之前先读入指定的页面中的内容(并不对动态内容求值),融合后的完整页面再被整体的转换为一个servlet。

    这意味着主页和被引入的页面共享所有的页面作用域数据。
    因此,如果主页面中声明了一个变量,而在某个被引入的页面中也声明了一个同名的变量,那么在翻译阶段将会造成一个错误,因为组合后的页面无法进行编译。

  • 被引用页面改变后,容器可能不会马上产生反应。
  • JSP规范建议在使用include指令引入JSP页面时,最好使用不同的文件扩展名,因为它们一般都不是完整而合法的页面,如:可以使用这些替代的文件扩展名:.jspf或 .jsf。
  • 执行时机:在翻译阶段(将JSP页面转换成servlet的阶段)

二、 <jsp:include page="header.jsp"/>

  • 该行为并不是要引入指定页面的实际内容,它将引入执行该引入页面后所产生的应答

    这意味着你可以指定任何能够产生文本应答的web资源。JSP容器将通过一个内部的函数调用来调用指定的资源。因此,这些被引入的资源可以帮助处理原来的请求,所以这些资源可以访问请求作用域内的所有对象,以及所有的请求参数。

  • 注意,它不能访问任何页面作用域属性,或是在主页面中声明的脚本变量。
  • 执行时机:在请求处理阶段。

三、 <c:import url="header.jsp"/>

  • <c:import>行为和<jsp:include>相同;
  • 另外它还可以从外部资源引入数据,比如不同的web应用程序;
  • 另外它还可以在被引用页面改变后,容器立刻能产生反应;
  • 所以应该使用<c:import>来代替<jsp:include>的使用。
  • 执行时机:在请求处理阶段。

最新文章

  1. 从E.E到S.E
  2. 设计模式_11_原型模式(prototype)深拷贝、浅拷贝
  3. File和URL的getPath()方法区别
  4. bzoj 2127: happiness
  5. LeetCode---- 二叉树中,找出和为某值的所有路径
  6. oracle的nvl函数的使用解析
  7. 设计模式之桥接模式(Bridge)--结构模型
  8. Android四种Activity的加载模式(转)
  9. 在 go/golang语言中使用 google Protocol Buffer
  10. 给定一个无序数组arr,求出需要排序的最短子数组长度。例如: arr = [1,5,3,4,2,6,7] 返回4,因为只有[5,3,4,2]需要排序。
  11. 李航《统计学习方法》CH01
  12. Java核心-多线程-并发控制器-CountDownLatch倒数闩
  13. 3D游戏的角色移动
  14. keras + tensorflow安装
  15. 23种设计模式之原型模式(Prototype)
  16. linux 修改hosts文件
  17. IntelliJ IDEA Ultimate 下载与安装
  18. GBDT:梯度提升决策树
  19. 3月23 格式布局及relative
  20. python学习day6 for循环 字符串的内置方法

热门文章

  1. Android 通过应用设置系统日期和时间的方法
  2. React曾经忽略的知识点(下)
  3. HDU 6625 (01字典树)
  4. Android NDK下载
  5. 事务的ACID属性
  6. Python 使用 PyQt5 开发的关机小工具
  7. 修改web项目发布路径
  8. pip安装报错:Fatal error in launcher: Unable to create process using &#39;&quot;&#39;
  9. ps 和 pstree的用法
  10. 【IOS打包】ARCHIVE FAILED:Command CodeSign failed with a nonzero exit code