include与jsp:include区别

我们都知道在jsp中include有两种形式,分别是
<%@ include file=” ”%>
<jsp:include page=” ” flush=”true”/>
前者是指令元素、后者是行为元素。具体它们将在何处用?如何用及它们有什么区别?这应该是很多人看到它都会想到的问题

一:执行时间上:
<%@ include file=”relativeURI”%> 是在翻译阶段执行
<jsp:include page=”relativeURI” flush=”true” /> 在请求处理阶段执行.

二:引入内容的不同:
<%@ include file=”relativeURI”%>
引入静态文本(html,jsp),在JSP页面被转化成servlet之前和它融和到一起.
<jsp:include page=”relativeURI” flush=”true” />引入执行页面或servlet所生成的应答文本.
另外在两种用法中file和page属性都被解释为一个相对的URI.如果它以斜杠开头,那么它就是一个环境相关的路径.将根据赋给应用程序的URI的前缀进行解释,如果它不是以斜杠开头,那么就是页面相关的路径,就根据引入这个文件的页面所在的路径进行解释.

时间: 2024-10-22 20:00:33

include与jsp:include区别的相关文章

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

1 前言 搞java开发的人也许都知道在jsp中引入项目中其他文件有如下两种方式 <%@include file="xxx.jsp"%> <jsp:include page="xxx.jsp"></jsp:include> 我们也许会使用这两种方式,但是也许很多人不名称这两种方式的区别.下面我们来看看下面的两个例子 2 开门见山引出问题 (1) /include/include.jsp <%@ page language=&

&lt;%@page include%&gt;、&lt;%@include%&gt;、&lt;jsp:include&gt;三者之间的本质区别

<%@page include%>.<%@include%>.<jsp:include>三者之间的本质区别 先从它的几个内置对象说起. application和session比较简单,这里主要说明request和page的作用范围. application:全局作用范围,整个应用程序共享,就是在部署文件中的同一个webApp共享,生命周期为:应用程序启动到停止. session:会话作用域,当用户首次访问时,产生一个新的会话,以后服务器就可以记住这个会话状态.生命周期:

jsp的静态包含与动态包含:&lt;%@ include file=&quot;&quot; %&gt;和&lt;jsp:include page=&quot;&quot;&gt;&lt;/jsp:include&gt;区别与分析

<%@ include file="" %>是将文件原封不动的copy进现有的文件中,像是拼接好后,再编译成为servlet运行. <jsp:include page=""></jsp:include>是编译后的servlet运行到该句时,跳转到指定的jsp编译的那个servlet继续运行,然后将运行结果,copy到现在的jsp中,故包含与被包含文件都是单独运行的. 在开发过程中,我们需要正确选择使用.举个例子: 比如在工程项目中

&lt;%@ include &gt; 与&lt; jsp:include &gt;

include指令表示在JSP编译时插入一个包含文本或者代码的文件,把文件中的文本静态地包含过去.也就是说,会把被包含的页面拷贝到包含的页面中指令所在的位置. 语法格式:<%@ include  file="relativeURL"%> relativeURL为包含进来的文件路径,可以是HTML,JSP文件,也可以是其他格式的文本文件. include在实际开发中到底有什么作用? 我们知道,在进行大型项目开发的时候,应尽量把各个组件模块化,JSP也是如此.例如,每个JSP页

关于&lt;%@ include file=&quot; &quot; %&gt;与&lt;jsp:include page=&quot;&quot;&gt;&lt;/jsp:include&gt;中的那些问题?

今天在使用<%@ include file=" " %>指令时,竟然在页面中不让使用?这是怎么回事:问题如下图: 顿时被这个问题给搞到了!!!突然想到在以前的 JSP 页面中就可以使用,而这是为什么?然后再进行查看时发现,原来是因为以前我为了方便而修改了创建 JSP 模版文件,我在文件上添加了如下代码: <%String path = request.getContextPath();String basePath = request.getScheme()+&quo

&lt;%@include%&gt;和&lt;jsp:include&gt;的区别

<%@include%>:页面请求之前预编译,所有代码包含进来之后,一起进行处理,把所有代码合在一起,编译成一个servlet <jsp:include>:所有代码分别处理,在页面被请求的时候才编译,被编译成多个servlet,页面语法相对独立,处理完成之后再将代码的显示结果(处理结果)组合进来. 我自己写的代码: <%@ page language="java" contentType="text/html; charset=UTF-8&quo

&lt;%@include和jsp:include

最近在搞页面.引用了分页的嵌套页面,各种错,之前也做过类似的,很容易忘,所以在此记录下来,希望对开发的你们,也有所帮助. 简单点说它们的区别: <jsp:include page="">  父页面和包含进来的页面单独编译,单独翻译成servlet后,在前台拼成一个HTML页面. <%@include file=""%> 父页面和包含进来的页面,代码合并后,才一起翻译成servlet,反馈到前台,形成一个HTML页面. <jsp:incl

Jsp Include指令 与动作区别

在说include指令和动作之前,我们先来了解下 jsp的生命周期. jsp生命周期 分为5个阶段 解析 servle容器检查页面语法 翻译将jsp编译成servlet源文件 编译 servlet容器将servlet源文件,生成为servlet类 运行加载对应的servlet类,创建实例,调用方法 销毁调用servelt销毁方法,销毁实例 以上为基础,进入正题 jsp的include有两种形式分别为 <%@include file=" " %> <jsp:includ

JSP 中动态 INCLUDE 与静态 INCLUDE 的区别?

一.静态包含指令<%@include file=“fileurl”%> 两个jsp页面的<%@page contentType=“text/html:charset=gbk”%>应该保持一致 不能通过fileurl向被包含的jsp页面传递参数,因为此静态包含是发生在jsp页面转换为servlet的转换期间,此时的参数是服务器端设置的死的参数,完全没有经过客户端,这种参数是没有意义的,如<%@include file=“fileurl?user=admin”%>,而且此时