include指令表示在JSP编译时插入一个包含文本或者代码的文件,把文件中的文本静态地包含过去。也就是说,会把被包含的页面拷贝到包含的页面中指令所在的位置。

语法格式:<%@ include  file="relativeURL"%>

relativeURL为包含进来的文件路径,可以是HTML,JSP文件,也可以是其他格式的文本文件。

include在实际开发中到底有什么作用?

我们知道,在进行大型项目开发的时候,应尽量把各个组件模块化,JSP也是如此。例如,每个JSP页面中都有一个导航栏,那么我们就可以把这个导航栏写成一个公共的navi.jsp。然后在其他的页面中只要引入这个导航栏就行了。

使用include指令注意两点:

1、被包含文件中不能再使用<html><body></html></body>的标签,否则会与包含页面中的标签重复;

2、被包含文件的路径不能写成动态的,如:<%@ include  file="<%=xxx%>"%>;

3、被包含文件的路径中不能携带参数,如:<%@ include  file="navi.jsp?flag=1"%>。

<jsp:include>实现的是动态包含,它把显示的结果插入到当前页面来显示。

语法格式:<jsp:include page="relativeURL" flush="true"/>

page表示一个相对路劲,可以是静态文件名,也可以是计算出来的动态相对路径值。

flush表示为真时,当缓冲区满会自动清空。这个属性石必须属性,而且值必须为true。

include指令和include动作指令的区别

1、动态include用jsp:include动作实现,它总是会检查所含文件中的变化,适合用于包含动态页面。并且可以带参数。而静态include用include指令实现,它不会检查所含文件的变化,适用于包含静态页面。

2、动态include和静态include根本性的不同在于它们被调用的时间。动态include在请求期间被激活,而静态include在页面转换期间被激活。

3、动态include先编译后执行;静态include不编译。

4、静态include只能生成一个servlet,动态include可以生成多个servlet。

5、静态include做出的任何修改必须重启当前的web服务才能生效,动态include保存即生效。

6、静态include不能实现在请求区间内共享对象,而动态include支持。

<%@ include > 与< jsp:include >的更多相关文章

  1. jsp中的@include与jsp:include区别详解

    1 前言 搞java开发的人也许都知道在jsp中引入项目中其他文件有如下两种方式 <%@include file="xxx.jsp"%> <jsp:include ...

  2. @include与jsp:include的区别

    1.可以使用一个JSP指令或者一个标准行为,在JSP页面中引入其他的页面片段. 2. include指令:在翻译阶段(将JSP页面转换成servlet的阶段),JSP的include指令会读入指定的页 ...

  3. <%@page include%>、<%@include%>、<jsp:include>三者之间的本质区别

    <%@page include%>.<%@include%>.<jsp:include>三者之间的本质区别 先从它的几个内置对象说起. application和se ...

  4. jsp的静态包含与动态包含:<%@ include file="" %>和<jsp:include page=""></jsp:include>区别与分析

    <%@ include file="" %>是将文件原封不动的copy进现有的文件中,像是拼接好后,再编译成为servlet运行. <jsp:include pa ...

  5. 关于<%@ include file=" " %>与<jsp:include page=""></jsp:include>中的那些问题?

    今天在使用<%@ include file=" " %>指令时,竟然在页面中不让使用?这是怎么回事:问题如下图: 顿时被这个问题给搞到了!!!突然想到在以前的 JSP ...

  6. include与jsp:include区别

    jsp 中include有两种形式,分别是 <%@ include file=” ”%> <jsp:include page=” ” flush=”true”/> 前者是指令元 ...

  7. <%@include和<jsp:include

    博客地址:http://www.cnblogs.com/shizhongtao/p/3506742.html欢迎交流 <%@ include %>是编译时包含,<jsp:includ ...

  8. <%@include>和<jsp:include>有什么不同呢

    <%@include>jsp指令先包含再处理,<jsp:include>jsp动作先处理再包含 1.执行时间上:< %@ include file=”relativeUR ...

  9. [转]<jsp:include>和<%@include%>的区别

    首先,转发自yangbobo1992的 <jsp:include>和<%@include%>的区别 这个是我见过写的最好的之一 <%@include%>和<j ...

随机推荐

  1. MinGW安装与环境变量配置和Sublime Text 2搭建C++编译环境

    MinGW安装与环境变量配置 从http://sourceforge.net/projects/mingw/下载MinGW,安装到D:\MinGW.工具集选择安装(之后还可以进行安装卸载):至少需要安 ...

  2. Quartz 用 cron 表达式存放执行计划

    Quartz 用 cron 表达式存放执行计划.引用了 cron 表达式的 CronTrigger 在计划的时间里会与 job 关联上. 1.Quartz cron 表达式支持七个域如下: 名称 是否 ...

  3. 进程之 Process join方法其他属性与进程Queue

    Process join方法 以及其他属性 在主进程运行过程中如果想并发地执行其他的任务,我们可以开启子进程,此时主进程的任务与子进程的任务分两种情况 情况一:在主进程的任务与子进程的任务彼此独立的情 ...

  4. socket通讯实例与TCP/UDP的区别

    一.socket代码实例 1.简单的socket通讯: 服务端代码实例: import socket sock = socket.socket(socket.AF_INET, socket.SOCK_ ...

  5. selenium - 驱动 chromedriver 初始化问题总结

    ChromeDriver切换浏览器语言 ChromeOptions options = new ChromeOptions(); options.addArguments("--lang=& ...

  6. Linq语句:三表联查

    var db = new DataEntities2();            var sss = ( from c in db.AIRPORT_HELIPORT                   ...

  7. EF中新建表和关联表的方法

    以机场表为例 private static AIRPORT_HELIPORTManager AirportHeliportManager => ManagerFactory.Instance.A ...

  8. Python——Dict

    Python字典(Dictionary) 字典是一种可变容器模型,可存储任意类型对象. 字典的每个键值(key => value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花 ...

  9. SQL Server Database Backup and Restore in C#

    SQL Server Database Backup and Restore in C# Syed Noman Ali Shah,                          7 Feb 201 ...

  10. leetcode812

    class Solution { public: double largestTriangleArea(vector<vector<int>>& points) { d ...