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. java md5 函数

    private static final String md5(final String s) { final String MD5 = "MD5"; try { // Creat ...

  2. PL/SQL 训练12--动态sql和绑定变量

    --什么是动态SQL?动态PL/SQL--动态SQL是指在运行时刻才构建执行的SQL语句--动态PL/SQL是指整个PL/SQL代码块都是动态构建,然后再编译执行 --动态SQL来可以用来干什么? - ...

  3. oracle 11g r2 rac到单实例的dg

    oracle 11g r2 rac到单实例的dg 1 主备环境说明 rac环境--primary CentOS release 6.5 (Final)hostname rac1 rac2ip 10.* ...

  4. ajax-简介和实现注册登录

    ajax知识点介绍: 异步Javascript和XML,用Javascript语言与服务器进行异步交互,传输的数据为XML(当然,传输的数据不只是XML),也有可能是json 优点: 1. AJAX使 ...

  5. StampedLock

    StampedLock是Java8引入的一种新的所机制,简单的理解,可以认为它是读写锁的一个改进版本,读写锁虽然分离了读和写的功能,使得读与读之间可以完全并发,但是读和写之间依然是冲突的,读锁会完全阻 ...

  6. MFC调试的几个技巧

    TCHAR pStr[] = _T("this is a test!"); void* p = (void*)pStr; TRACE(_T("pStr is %s\n&q ...

  7. Angular2快速入门-3.多个组件(分离新闻列表页和详细页)

    上篇(Angular2快速入门-2.创建一个新闻列表)已经完成新闻列表的展示,并且点击新闻列表的时候,下面可以展示出新闻的详细信息,这节我们把新闻详细和新闻列表页面分离出来 新闻详细单独一个compo ...

  8. mybatis 动态sql语句(3)

    mybatis 的动态sql语句是基于OGNL表达式的.可以方便的在 sql 语句中实现某些逻辑. 总体说来mybatis 动态SQL 语句主要有以下几类: 1. if 语句 (简单的条件判断) 2. ...

  9. adb正常,手机启动usb调试,adb devices下没有改设备

    手机开启开发者模式,adb正常时adb devices下没有设备: 1.进入设备管理器--查找adb的硬件id

  10. Linux - 目录结构及文件操作

    根目录 “/”:Linux 系统中最高层的目录 这个就是根目录 用 / 表示根目录 bin 目录:存放可执行文件 bin 目录下的文件都是平常使用的命令 在 Linux 系统中,一切都是文件 sbin ...