`

jsp include动作和inlcude指令学习

阅读更多

它们的区别主要为以下几点:

  jsp:include 动作 include指令
语法

<jsp:inlcude

page="relative-path-to-resource"/>

<%@ include

file="relative-path-to-resource" %>

被包含发生时间 请求页面时 jsp页面转为servlet时
被包含内容 jsp页面的output(一般为html) jsp页面的源码
对应servlet数目

两个

(包含页面和被包含页面各自

对应一个servlet)

一个

(只有包含页面对应的servlet

即主页面的servlet)

被包含页面设置的

resposne header

信息, 能否影响

到包含页面?

不能,各自对应不同的servlet。 能,对应同一个servlet。

被包含页面定义的

属性和方法信息,

能否被包含页面使用?

不能,各自对应不同的servlet。 能,对应同一个servlet。

当被包含页面发生

变化时,

包含页面是否需要更新?

不需要,

因为被包含的是jsp页面的结果(html)。

需要,因为包含的是jsp的源码,

需要重新进行jsp到servlet

的转换。

相应的servelt代码 RequestDispatcher的include方法

 

补充说明(1):

其中的relative-path-to-resource,如果不是以"/"开始,则是相对于当前包含文件的相对路径。

如果是以"/"开始,则是相对于当前Web应用程序的根目录相对路径。

另外,由于include指令对于包含页面的难维护性,所以一般推荐使用include动作,

除非有特殊需求,如需要访问被包含页面中定义的属性和方法。

 

补充说明(2):

jsp转化为servlet场景

  jsp转化为servlet 编译servlet servlet装载到server内存 调用jspInit方法 调用_jspService方法
编写jsp页面后保存
第一次请求 执行 执行 执行 执行 执行
第二次请求 不执行 不执行 不执行 不执行 执行
重启服务器
第三次请求 不执行 不执行 执行 执行 执行
第四次请求 不执行 不执行 不执行 不执行 执行
编辑jsp页面后保存
第五次请求 执行 执行 执行 执行 执行
第六次请求 不执行 不执行 不执行 不执行 执行
分享到:
评论

相关推荐

    Include-Poetry.github.io:网站源代码#Inlcude 作为墨西哥国家科学奥林匹克运动会的学习材料

    #include 的诞生是为了支持对组成墨西哥国家科学奥林匹克运动会的各个学科的研究,例如OMI ( Olimpiada Mexicana deInformática ), OMM ( Olimpiada Mexicana deMatemáticas ),除了使用网站作为主要工具进行...

    SLQITE3 使用的inlcude +lib + dlll

    1. **头文件(include)**:`sqlite3.h`是SQLite3的主要头文件,包含了所有必要的函数声明和数据结构定义,供开发者在应用程序中调用SQLite3的功能。例如,`sqlite3_open()`用于打开或创建数据库,`sqlite3_exec()`...

    tiles-3.0.8-bin.zip

    Tiles 是一种JSP布局框架,主要目的是为了将复杂的jsp页面作为一个的页面的部分机能,然后用来组合成一个最终表示用页面用的,这样的话,便于对页面的各个机能的变更及维护。...有点类是jsp:inlcude。

    php中inlcude()性能对比详解

    综上所述,优化`include`语句的使用方式,如采用绝对路径和定义全局常量,能够提升PHP程序的运行效率。同时,使用`__autoload`代替`include_once`在处理大量类文件时,可以显著减少资源消耗,尤其在文件被反复包含的...

    ffmpeg开发包及其设置说明

    1、设置头文件和库文件路径 在VC6.0下 Tools-&gt;options-&gt;Directories 对于 show directory 选择“inlcude files” 添加include文件路径 如:C:\Program Files\ffmpeg\include 添加include下的文件夹 如:C:\...

    apue.h 《UNIX环境高级编程》 头文件

    将apue.h和error.c两个文件copy到该目录下。(apue.h位于 your_apue_path/inlcude ; error.c位于your_apue_path/lib ) 以我的了路径为例: #cp /home/ucfree/apue.2e/inlcude/apue.h . #cp /home/ucfree/apue.2e/...

    opencv-3.1.0_build.part01

    Windows环境下编译OpenCV3.1和OpenCV_contrib 好的lib,bin和inlcude文件(part 1)

    opencv-3.1.0_build.part02

    Windows环境下编译OpenCV3.1和OpenCV_contrib 好的lib,bin和inlcude文件(part 2)

    啊哈C语言 第5讲 数据输出--我说咋的就咋的.pdf

    2. **头文件包含错误**: 如 `#inlcude&lt;stdio.h&gt;` 应为 `#include&lt;stdio.h&gt;`,这样的错误会导致编译失败,因为编译器找不到需要的库。 3. **换行符错误**: 在 `printf("%d/n",c);` 中的 `/n` 应该是 `\n`,即反斜杠...

    Coding_Practice:我自己的编码练习集

    CS注 我自己的计算机科学笔记集。 #include #include &lt;notes&gt; //使用LaTeX并且太懒了,无法配置 #inlcude #include #include #include &lt;searchEngine&gt;

    media inluce file in linux kernel

    "media include file in Linux kernel"这个标题暗示我们要探讨的是与Linux内核中的媒体子系统相关的头文件,这些头文件定义了接口、结构体和常量,供驱动程序和用户空间应用程序使用。当我们谈论“file update in ...

    c-libs-file_program

    确保对文件和目录具有适当的权限1.编译选项:-Wall -Wextra -Werror并使用gcc 研究成果 cat struct rlimit # include #inlcude struct rlimit { rlimt_t rlim_cur; // soft limit rlimt_t rlim_max; // hard ...

    libipc-:来自 C++ 的 IPC 库的交叉平台

    它支持 Windows 和 Linux 系统,并允许轻松使用进程、管道、信号量等。 该图书馆是作为维也纳应用科学技术大学学生项目的一部分创建的。 安装 为了使用这个库,你必须首先使用 CMake 构建系统来构建它。 ccmake ....

    tensorflow-cpp-VS2015:VS2015的Tensorflow C ++示例

    勾选tensorflow_BUILD_SHARED_LIB和tensorflow_ENABLE_GPU 去掉tensorflow_ENABLE_GRPC_SUPPORT 编译生成好的项目,最后别忘了在INSTALL工程上右键生成,以便把所需的文件拷贝至相应的路径。 2.编译本工程 打开...

    tcp enc28j60

    此外,通过使用\Inlcude\TCPIPStack\TCPIPConfig.h中定义的函数,可以有效地管理任务执行的时间,确保网络操作的正确性和效率。 ### 测试与工具 最后,文件中还提到了使用SimpleComTools进行TCP客户端测试的方法。...

    dydx:Ruby 微积分和微积分

    极限、三角函数和对数。 甚至使用个人电脑也能享受数学。 (更不用说使用笔了。) inlcude Dydx ,ruby 变得像其他语言一样。 大纲 require 'dydx' include Dydx # Define the function. syntax is not good ...

    ssd5 recommendexe1

    从描述中我们可以看到,“inlcude date.cpp, homeworklist.cpp, homework.cpp and others”,这表明这是一个使用C++编程语言开发的项目,因为".cpp"是C++源代码文件的扩展名。这些文件可能是项目中的不同模块,分别...

    网易云12138

    #inlcude using namespace std; int main() { }

Global site tag (gtag.js) - Google Analytics