<%@include...> 与<jsp:include....>指令的区别

include指令:

在翻译阶段(将JSP页面转换成servlet的阶段),include会读入指定的页面中的内容,并将这些内容和原来的页面融合在一起
   <%@ include file=”header.html”%>
引入的页面可以只包含静态内容(例如HTML),也可以是一个普通的JSP页面。主页面和引入的页面融和在一起(引入的页面只是最为普通的文本进行融合,并不对动态内容求值),融合后的完整页面再被整体的转换为一个servlet。
这意味着主页和被引入的页面共享所有的页面作用域数据。因此,如果主页面中声明了一个变量,而在某个被引入的页面中也声明了一个同名的变量,那么在翻译阶段将会造成一个错误,因为组合后的页面无法进行编译。

include指令的一个常见用法是引入应用程序的所有页面都需要的公共声明。
JSP规范建议在使用include指令引入JSP页面时,最好使用不同的文件扩展名,因为它们一般都不是完整而合法的页面,如:可以使用这些替代的文件扩展名:.jspf或 .jsf。
被引用页面改变后,容器可能不会马上产生反应。

<jsp:include>

指令用于在运行时引入另外的资源。

<jsp:include page=”navigation.jsp”/>
这个指令是在请求处理阶段而不是在翻译阶段执行的。该行为并不是要引入指定页面的实际内容,它将引入执行该引入页面后所产生的应答,这意味着你可以指定任何能够产生文本应答的web资源。JSP容器将通过一个内部的函数调用来调用指定的资源。因此,这些被引入的资源可以帮助处理原来的请求,所以这些资源可以访问请求作用域内的所有对象,以及所有的请求参数。但是要注意,它不能访问任何页面作用域属性,或是在主页面中声明的脚本变量。
<c:import>行为和<jsp:include>相同,另外它还可以从外部资源引入数据,比如不同的web应用程序,或者一个FTPfuwq。
  所以应该使用<c:import>来代替<jsp:include>的使用。
  被引用页面改变后,新版本会立即投入使用。

include 和<jsp:include>行为直接的区别

语法     执行时间     引入内容
<%@ include  File=”relativeURI”%>     翻译阶段     静态文本(HTML、JSP),在JSP页面被转换为servlet之前和他融合在一起
<jsp:include Page=”relativeURI”Flush=”true/false”/>     请求处理阶段     执行页面或servlet所生成的应答文本

总结:<%@ include file%>是把引入的文件和当前的文件共同合斌成一个servlet文件进行解析。<JSP:include page>是把当前文件和引入文件生成两个不同的servlet文件,在当前文件中在进行动态的调用引入的servlet文件。

72 include动作和指令的区别相关推荐

  1. JSP中的include指令和include动作的区别

    我们都知道在jsp中include有两种形式,分别是Include指令:<%@ include file=""%>和include动作:<jsp:include ...

  2. 浅谈JSP中include指令与include动作标识的区别

    JSP中主要包含三大指令,分别是page,include,taglib.本篇主要提及include指令. include指令使用格式:<%@ include file="文件的绝对路径 ...

  3. JSP include指令和include动作的区别

    include指令 JSP可以通过include指令来包含其他文件.被包含的文件可以是JSP文件.HTML文件或文本文件.包含的文件就好像是该JSP文件的一部分,会被同时编译执行. Include指令 ...

  4. JSP中include指令和include动作的区别

    include指令是编译阶段的指令,即include所包含的文件的内容是编译的时候插入到JSP文件中,JSP引擎在判断JSP页面未被修改,否则视为已被修改.由于被包含的文件是在编译时才插入的,因此如果 ...

  5. JSP→Javabean简介设计原则、JSP动作、Javabean三个动作、Javabean四个作用域范围、Model1简介弊端、JSP状态管理、include动作指令、forword动作、param

    Javabean简介设计原则 JSP动作 useBean动作 setProperty动作 getProperty动作 Javabean的四个作用域范围 Model1简介弊端 JSP状态管理 Cooki ...

  6. 【Head First Servlets and JSP】笔记24:include指令与include动作 param动作 foward动作...

    include指令与include动作 1.样例代码 <%@ page contentType="text/html;charset=UTF-8" language=&quo ...

  7. 【PHP】PHP include()和require()方法的区别

    PHP的include()和require()是两种包含外部文件的方法,对于这两种方法有什么区别,很多初学者可能不是很明白.下面总结一下PHP include()和require()的区别: 1:加载 ...

  8. include(),include_once(),requice(),require_once()的区别

    include(),include_once(),requice(),require_once()的区别 发布时间:2011-07-23 发布人:张东哲 来源:上海PHP培训 点击:165次   分享 ...

  9. require与include+php,PHP中include与require有什么区别

    PHP中include与require有什么区别 发布时间:2021-01-13 15:24:31 来源:亿速云 阅读:81 作者:Leah PHP中include与require有什么区别?相信很多 ...

最新文章

  1. RTT 动态线程和静态线程
  2. c# 使用Autodesk design Review API
  3. Qt 调用VISA库通过SCPI程控仪器-以IT8906A电子负载为例
  4. Vmware上安装RedHat Linux 7.3操作系统手册
  5. java对象怎么创建_java对象是怎么创建出来的
  6. mysql 什么时候用单列索引?什么使用用联合索引?
  7. SpringBoot项目中图片的引用
  8. Micropython教程之TPYBoard开发板驱动舵机教程(萝卜学科编程教育)
  9. ue4联网和多人游戏总结(第二部分)
  10. 前端性能优化——字体文件压缩
  11. 理解容器中超易混淆 Attach 和 Exec 的异同
  12. android后台流量限制,手机流量控制!安卓手机控制流量设置小技巧
  13. Unirech腾讯云代充-关于腾讯云国际版云服务器实例调整配置常见问题
  14. HTML和CSS实现京东首页(附GitHub地址)
  15. sdust 2410 Mine Number
  16. 项目经理需要铭记在心的话
  17. mysql records_MySQL 安装配置 · LYF_Records
  18. ARM GIC中断控制器介绍
  19. IEEE754标准以及非常规划定义,double的二进制转换工具类
  20. “一键GHOST”系统备份与恢复 一键GHOST使用方法 - 绿色软件联盟 - 绿色免费共享

热门文章

  1. Tomcat提示Null component
  2. linux下解压 cpio.gz格式文件
  3. .NET平台依赖注入机制及IoC的设计与实现
  4. vue 横向菜单滚动定位_使用vue组件+iscroll实现一个横向菜单,不能正确滑动
  5. mysql死锁查询_Mysql 查看死锁,解除死锁 方式
  6. linux 文件 重命名 缓存,linux – rename()原子性和NFS?
  7. win10 VScode配置GCC(MinGW)
  8. Species Tree(HashTable实现)
  9. Linux C 预处理详解
  10. 【Phpstorm】Property accessed via magic method