`

@include file的路径问题 以及与< jsp:include page=""/>区别

阅读更多

       include的file属性都被解释为一个相对的URI.如果它以斜杠开头,那么它就是一个环境相关的路径.将根据赋给应用程序的URI的前缀进行解释,如果它不是以斜杠开头,那么就是页面相关的路径,就根据引入这个文件的页面所在的路径进行解释。

 

       jpsf文件默认放在WEB-INF/jspf/下,在二级目录下调用jspf文件有以下两种方式:

 

       <%@ include file="/WEB-INF/jspf/HeaderPage.jspf" %>

       或者

       <%@ include file="../WEB-INF/jspf/HeaderPage.jspf"%>

 

 

然后说说< %@ include file=""%>与< jsp:include page=""/>区别

 

      两者最重要的区别:JSP指令< %@ include file=”"%>,是将被引入的JSP与原JSP融合到一起,而这个融合过程是在翻译阶段进行的。

     jsp页面是把include指令元素(< %@ include file=”"%>)所指定的页面的实际内容(也就是代码段)加入到引入它的jsp页面中,合成一个文件后被jsp容器将它转化成servlet。可以看到这时会产生一个临时class文件和一个servlet源文件。而动作元素(< jsp:include page=""/>)是在请求处理阶段引入的,会被JSP容器生成两个临时class文件和两个servlet原文件。而引入的只是servlet的输出结果,即JspWriter对象的输出结果,而不是jsp的源代码。

 

总结两种include 两种用法的区别,主要有两个方面的不同:
一、执行时间上:
     <%@ include file=”relativeURI”%> 是在翻译阶段执行
     <jsp:include page=”relativeURI” flush=”true” /> 在请求处理阶段执行。
二、引入内容的不同:
      <%@ include file=”relativeURI”%> 引入静态文本(html,jsp),在JSP页面被转化成servlet之前和它融和到一起。
      <jsp:include page=”relativeURI” flush=”true” />引入执行页面或servlet所生成的应答文本。

分享到:
评论

相关推荐

    include 两种用法的区别

    &lt;%-- 或者使用静态包含:&lt;%@ include file="date.jsp" %&gt; --%&gt; &lt;/head&gt; &lt;body&gt; &lt;p&gt;今天的日期是:&lt;/p&gt; &lt;/body&gt; &lt;/html&gt; ``` 如果使用`&lt;jsp:include page="date.jsp" flush="true"/&gt;`,那么每当访问`test.jsp...

    JSP:include和include指令区别

    在JavaServer Pages (JSP) 技术中,`&lt;jsp:include&gt;` 和 `&lt;%@ include %&gt;` 是两个用于页面组合的指令,它们虽然都用于将一个或多个文件的内容插入到主页面中,但它们的工作机制和使用场景有所不同。理解这两者的区别...

    jsp页面错误信息

    &lt;%@ page language="java" contentType="text/html; charset=gb2312"%&gt; &lt;html&gt; ... &lt;tr &gt;&lt;td colspan="2"&gt;&lt;%@ include file="view/AdminEnd.jsp" %&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/table&gt; &lt;/center&gt; &lt;/body&gt; &lt;/html&gt;

    JSP图书管理系统

    &lt;td height="277" align="center" valign="top"&gt;&lt;%@include file="changxiao.jsp"%&gt;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;br&gt; &lt;table width="208" height="356" border="0" cellpadding="0" cellspacing="0" background=...

    ssh2demolala

    &lt;%@include file="header.jsp"%&gt; &lt;table width="759" border="0" cellspacing="0" cellpadding="0"&gt; &lt;tr&gt; &lt;td align="center"&gt; &lt;s:form action="Useradd"&gt; &lt;table width="400" border="0" cellspacing="0" ...

    jsp的include的两种用法

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

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

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

    Java Oracle分页处理

    &lt;%@ include file="Strutstaglibs.jsp" %&gt; &lt;%@ taglib uri="http://java.sun.com/jstl/core_rt" prefix="c" %&gt; &lt;html&gt; &lt;head&gt; &lt;title&gt;分页技术信息显示页面&lt;/title&gt; &lt;/head&gt; &lt;body bgcolor="green"&gt; &lt;table ...

    Jsp7打动作的资料

    包含分为指令`&lt;%@ include file=""&gt;`和动作`&lt;jsp:include page=""&gt;`。 - **包含指令**: 在JSP转换为Servlet源码之前执行,将JSP代码直接插入到主页面中。这意味着被包含的页面可以影响主页面的整体结构,如...

    12-File-Inclusion-Chinese.pdf

    根据提供的文件信息,本篇文章将围绕“在JSP页面中包含文件”的主题展开,深入探讨JSP中的两种主要包含机制:`jsp:include`动作标签与`&lt;%@ include %&gt;`指令,以及它们在实际开发中的应用场景。 ### JSP页面中的文件...

    jsp中如何实现按下回车键自动提交表单.docx

    &lt;%@ include file="../../common/page_var.jsp" %&gt; &lt;!DOCTYPE HTML&gt; &lt;html&gt; &lt;head&gt; &lt;meta http-equiv="Content-Type" content="text/html; charset=UTF-8"&gt; &lt;title&gt;&lt;%= pageTitle %&gt; - 用户登录&lt;/title&gt; &lt;%@ ...

    jsp基本语法(指令,包括各种动作,表达式,内置对象等)

    jsp:include 动作与`&lt;%@ include %&gt;`类似,但可以动态地包含页面。 **JSP语法**: ```jsp &lt;jsp:include page="page.jsp" flush="true"/&gt; ``` **示例**: ```jsp &lt;jsp:include page="header.jsp" flush="true"/&gt; ``` ...

    JSP指令和动作熟悉

    本篇将详细介绍JSP中的`page`指令,以及`include`指令与相关动作`&lt;jsp:include&gt;`, `&lt;jsp:forward&gt;`, `&lt;jsp:fallback&gt;`, `&lt;jsp:plugin&gt;`。 首先,`page`指令是JSP中最高级别的指令,它用于定义整个JSP页面的属性。`...

    第六章 JSP技术.docx

    - `&lt;jsp:include page="header.jsp" /&gt;` 和 `&lt;jsp:include page="footer.jsp" /&gt;` 会在运行时动态加载`header.jsp`和`footer.jsp`的内容。 - 这种方式称为动态包含,因为包含的动作是在运行时发生的,而不是在编译时...

    jsp学习大全精华.doc

    &lt;jsp:include page="file-url|&lt;%=expression%&gt;" flush="true" /&gt; ``` `flush`属性默认为`false`,当设置为`true`时,表示在包含之前清空缓冲区。同样,`jsp:param`可用于传递参数: ```html &lt;jsp:include ...

    jsp音乐网源码

    &lt;jsp:include page="song.do" flush="true"&gt; &lt;jsp:param name="action" value="songType"/&gt; &lt;/jsp:include&gt; &lt;/div&gt; &lt;/div&gt; &lt;div id="title" style=" width:899px;height:25px; text-align:left; padding-left:...

    JSP教案大纲.

    - **&lt;jsp:include&gt;**:插入指定文件到生成的页面中,如 `&lt;jsp:include page="header.jsp" flush="true" /&gt;`,flush属性决定是否清空缓冲区。 - **&lt;jsp:forward&gt;**:将请求转发到其他页面或Servlet,如 `&lt;jsp:...

    WEB开发 之 Actions的使用.docx

    这与JSP指令`&lt;%@ include file="..." %&gt;`不同,后者在JSP转换为Servlet时静态地包含文件。`jsp:include`允许一定的灵活性,但不支持包含包含一般JSP代码的文件。例如,以下代码展示了如何在网页中插入多个新闻条目:...

    include 详析

    1. **编译与运行时的区别**:`&lt;%@ include file="% %&gt;`在编译时执行,而`&lt;jsp:include&gt;`在运行时执行,这决定了它们在性能和灵活性上的不同表现。 2. **数据流管理**:使用`&lt;jsp:include&gt;`时,需要注意被包含页面...

Global site tag (gtag.js) - Google Analytics