`

@include与jsp:include的区别

    博客分类:
  • JSP
jsp 
阅读更多
转自
引用
http://blog.csdn.net/itautomn/article/details/1635726

一、include指令:在翻译阶段(将JSP页面转换成servlet的阶段),JSP的include指令会读入指定的页面中的内容,并将这些内容和原来的页面融合在一起。
  
<%@ include file=”header.html”%>

 引入的页面可以只包含静态内容(例如HTML),也可以是一个普通的JSP页面。主页面和引入的页面融和在一起(引入的页面只是最为普通的文本进行融合,并不对动态内容求值),融合后的完整页面再被整体的转换为一个servlet。
 这意味着主页和被引入的页面共享所有的页面作用域数据。因此,如果主页面中声明了一个变量,而在某个被引入的页面中也声明了一个同名的变量,那么在翻译阶段将会造成一个错误,因为组合后的页面无法进行编译。
 include指令的一个常见用法是引入应用程序的所有页面都需要的公共声明。
   JSP规范建议在使用include指令引入JSP页面时,最好使用不同的文件扩展名,因为它们一般都不是完整而合法的页面,如:可以使用这些替代的文件扩展名:.jspf或 .jsf。
二、<jsp:include>行为用于在运行时引入另外的资源。
 
<jsp:include page=”navigation.jsp”/>

 这个行为是在请求处理阶段而不是在翻译阶段执行的。该行为并不是要引入指定页面的实际内容,它将引入执行该引入页面后所产生的应答,这意味着你可以指定任何能够产生文本应答的web资源。JSP容器将通过一个内部的函数调用来调用指定的资源。因此,这些被引入的资源可以帮助处理原来的请求,所以这些资源可以访问请求作用域内的所有对象,以及所有的请求参数。但是要注意,它不能访问任何页面作用域属性,或是在主页面中声明的脚本变量。

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

相关推荐

    JSP:include和include指令区别

    1. 动态与静态:`&lt;jsp:include&gt;` 动态包含,`&lt;%@ include %&gt;` 静态包含。 2. 执行时机:`&lt;jsp:include&gt;` 在请求时,`&lt;%@ include %&gt;` 在编译时。 3. 内容变化:`&lt;jsp:include&gt;` 适合动态内容,`&lt;%@ include %&gt;` 适合...

    jsp:include与include实探

    `jsp:include`和`&lt;jsp:include&gt;`的一个关键区别在于处理动态内容的能力。`jsp:include`适合于包含动态内容,因为它会在每次请求时重新计算;而`&lt;jsp:include&gt;`则适用于包含静态内容,因为它在页面编译时就完成了包含...

    用jsp:include控制动态内容的方法.docx

    nt test&lt;/title&gt;&lt;/head&gt;&lt;body&gt;This content is statically in the main JSP file. &lt;jsp:include page="included.html"/&gt;&lt;/body&gt;&lt;/html&gt;]]&gt;)正如你所见,清单2使用了传统的`&lt;%@include file="..."%&gt;`伪指令来包含...

    jsp的include的两种用法

    JSP 中的 Include 的两种用法 JSP 中的 Include 有两种用法,分别是 `&lt;%@ include file=” ”%&gt;` 和 `&lt;jsp:include page=” ” flush=”true”/&gt;`。这两种用法都可以用于引入其他 JSP 文件,但是它们之间存在着一些...

    jsp中两种包含关系(include动作和include指令)的区别

    在JavaServer Pages (JSP) 技术中,存在两种包含关系:`&lt;jsp:include&gt;` 动作和 `jsp:include` 指令。它们都是用来将一个页面的内容插入到另一个页面中的,但它们的工作方式和适用场景有所不同。 **1. `&lt;jsp:include...

    JSP中include指令和include行为的区别

     jsp:include page=” ” flush=”true”/&gt; 前者是指令元素、后者是行为元素。具体它们将在何处用?如何用及它们有什么区别?这应该是很多人看到它都会想到的问题。下面一起来看看吧。 通常当应用程序中所有的...

    Java Web 实验四 掌握<jsp:include>动作的使用

    它与`&lt;jsp:forward&gt;`动作有所不同,`&lt;jsp:forward&gt;`会中断当前请求,而`&lt;jsp:include&gt;`则是在当前请求的基础上添加内容。理解这两个动作的区别对于优化应用的性能和结构至关重要。 通过这个实验,学生不仅能掌握`...

    jsp的Include方式

    在JSP中,`Include` 方式是实现页面组合的重要技术,它允许我们把多个页面的内容合并到一个主页面中,从而实现代码复用和页面布局的灵活管理。本文将深入探讨JSP的`Include` 方式的概念、类型以及使用方法。 1. **...

    十三、JSP动作

    JSP动作包括: jsp:include:在页面被请求的时候引入一个文件。 jsp:useBean:寻找或者实例化一个JavaBean。 jsp:setProperty:设置JavaBean的属性。 jsp:getProperty:输出某个JavaBean的属性。 jsp:forward:把...

    jsp include文件时的一个乱码解决方法.docx

    JSP Include 文件时的一个乱码解决方法 在 JSP 开发中,include 文件是一个常用的技术手段,可以将公共的代码或者组件包含到不同的页面中,以提高代码的复用性和维护性。然而,在使用 JSP include 文件时,经常会...

    JSP下动态INCLUDE与静态INCLUDE的区别分析

     用jsp:include动作实现 &lt;jsp include page=”included.jsp” flush&gt;它总是会检查所含文件中的变化,适合用于包含动态页面,并且可以带参数。 静态INCLUDE   用include伪码实现,定不会检查所含文件的变化,...

    jsp基础测试 期末考试

    考虑下面JSP文件代码片断: &lt;jsp:include page=”test2.jsp”&gt; &lt;jsp:param name=”username” value=”accp”/&gt; &lt;/jsp:include&gt; 以下( )代码片断放置在test2.jsp中不会导致错误。

    include 两种用法的区别

    ### JSP Include 两种用法的区别 在JSP(JavaServer Pages)开发中,`include`指令被广泛用于将一个JSP页面的内容嵌入到另一个JSP页面中。这种技术可以提高代码的重用性、简化维护过程并有助于实现更灵活的设计。在...

    jsp中include指令静态导入和动态导入的区别详解.docx

    JSP 中 Include 指令静态导入和动态导入的区别详解 JSP 中的 Include 指令可以实现静态导入和动态导入两种方式。静态导入和动态导入是 JSP 中 Include 指令的两种不同的实现方式,它们之间有着明显的区别。 静态...

    使用jsp:include控制动态内容的方法

    与此相对,清单3展示了相同页面,但是转而使用了jsp:include动作。区别在于,jsp:include动作允许页面在每次请求时都检查并包含included.html页面的最新内容,从而解决了动态内容更新的问题。 总结来说,jsp:...

    springMVC使用jsp:include嵌入页面的两种方法(推荐)

    本文将详细介绍两种使用`jsp:include`标签在Spring MVC中嵌入页面的方法。 1. 静态嵌入子页面 静态嵌入是通过`&lt;%@ include file="..." %&gt;`语法实现的。这种方法在JSP页面被转换成Servlet源代码时就已经处理,所以...

    2.4 include指令 JSP+AJAX

    2.4 include指令 JSP+AJAX2.4 include指令 JSP+AJAX2.4 include指令 JSP+AJAX2.4 include指令 JSP+AJAX

    j2ee15:jsp04,session的访问控制,分页查询,page include·

    标题“j2EE15:jsp04,session的访问控制,分页查询,page include”涉及了四个关键的Java Web开发概念。首先,我们来深入理解这些概念: 1. **Session的访问控制**: 在Web应用中,session是用于跟踪用户状态的一种...

    JavaWeb期末考试题必过宝典.docx

    这份"JavaWeb期末考试题必过宝典"涵盖了多个关键知识点,主要包括Servlet的生命周期、Servlet与CGI的区别、Servlet的基本架构、JSP中的动态INCLUDE与静态INCLUDE、JSP的内置对象及其方法、JSP的常用指令以及JSP的...

Global site tag (gtag.js) - Google Analytics