---恢复内容开始---

JSP页面静态包含和动态包含的区别与联系:

1、<%@ include file=” ” %> 是指令元素,<jsp:include page=” ”/> 是行为元素。

2、静态包含:

语法:<%@ include file=” ” %>,

包含文件先是要直接复制一份内容到主体页面内,然后被包含的内容一起和主体转换成.class文件。只出现一个.class文件一个java文件,最终编译成java文件。

3、动态包含:

语法:<jsp:include page=” ”/> ,

动态包含可以包含静态页面,也可以包含动态页面。

如果包含的是静态页面,那么和静态包含差不多,也是直接复制一份被包含页面的内容到主体文件后一起被转换成.class文件,最终编译成java文件。

如果包含的是动态页面,则被包含页面和主体页面,分别转换成.class文件后,分别编译成java文件,最后被包含页面才加载到主体页面,出现多个.class文件和多个java文件。

4、静态包含发生在jsp向servlet转换的时期,一起最后被编译成java文件后,再向servlet转换,所以被包含页面和主体页面的编码必须一致。

5、动态包含发生在编译时期,当执行到被包含页面时,才转换,所以产生多个java和class文件。

6、静态包含因为是编译前就合并了,所以在文件间传参是没有意义的,访问的是同一个request对象,因为是同一个servlet,同在 _jspService() 方法中。

7、动态包含因为是当执行到被包含页面时,才转换,所以多个文件的request对象不是同一个,但被包含页面可以取得包含页面的参数,从而动态包含可以传参数,也可以通过标签传递参数:

< jsp:include page="..." flush=true>
< jsp:param name="..." value="..."/>
< /jsp:include>

---恢复内容结束---

JSP页面静态包含和动态包含的区别与联系:

1、<%@ include file=” ” %> 是指令元素,<jsp:include page=” ”/> 是行为元素。

2、静态包含:

语法:<%@ include file=” ” %>

包含文件先是要直接复制一份内容到主体页面内,然后被包含的内容一起和主体转换成.class文件。只出现一个.class文件一个java文件,最终编译成java文件。

3、动态包含:

语法:<jsp:include page=” ”/> ,

动态包含可以包含静态页面,也可以包含动态页面。

如果包含的是静态页面,那么和静态包含差不多,也是直接复制一份被包含页面的内容到主体文件后一起被转换成.class文件,最终编译成java文件。

如果包含的是动态页面,则被包含页面和主体页面,分别转换成.class文件后,分别编译成java文件,最后被包含页面才加载到主体页面,出现多个.class文件和多个java文件。

4、静态包含发生在jsp向servlet转换的时期,一起最后被编译成java文件后,再向servlet转换,所以被包含页面和主体页面的编码必须一致。

5、动态包含发生在编译时期,当执行到被包含页面时,才转换,所以产生多个java和class文件。

6、静态包含因为是编译前就合并了,所以在文件间传参是没有意义的,访问的是同一个request对象,因为是同一个servlet,同在 _jspService() 方法中。

7、动态包含因为是当执行到被包含页面时,才转换,所以多个文件的request对象不是同一个,但被包含页面可以取得包含页面的参数,从而动态包含可以传参数,也可以通过标签传递参数:

< jsp:include page="..." flush=true>
       < jsp:param name="..."     value="..."/>
< /jsp:include>

JSP页面静态包含和动态包含的区别与联系的更多相关文章

  1. jsp中静态include和动态include的区别

    jsp中静态include和动态include的区别 动态 INCLUDE 用 jsp:include 动作实现 <jsp:include page="included.jsp&quo ...

  2. JSP页面的静态包含和动态包含

    JSP中有两种包含:静态包含:<%@include file="被包含页面"%>和动态包含:<jsp:include page="被包含页面" ...

  3. JSP页面的静态包含和动态包含的区别与联系

    JSP中有两种包含: 静态包含:<%@include file="被包含页面"%> 动态包含:<jsp:include page="被包含页面" ...

  4. JSP静态包含和动态包含的区别和联系

    JSP页面的静态包含和动态包含 JSP中有两种包含:静态包含:<%@include file="被包含页面"%>和动态包含: <jsp:include page= ...

  5. JSP静态包含和动态包含

    JSP中有两种包含: 静态包含:<%@include file="被包含页面"%>: 动态包含:<jsp:include page="被包含页面&quo ...

  6. java web jsp原理图 ,静态包含,动态包含,out与response.getWrite()

    jsp原理图 ,静态包含,动态包含,out与response.getWrite() 

  7. JSP页面静态化

    Ps:好久没写博客了,不是我太懒,是因为苦逼的我出差去上海了,天天加班 刚回成都.... 今天说说jsp页面静态化,知道静态化的朋友都不陌生,说白了就是访问后缀是html 而不是jsp. 没听说过静态 ...

  8. JSP页面静态化总结之一使用URLRewrite实现url地址伪静态化

    JSP页面静态化总结之一使用URLRewrite实现url地址伪静态化 1使用URLRewrite实现url地址伪静态化1.1URLRewirte的用处 1.满足搜索引擎的要求. 2.隐藏技术实现,提 ...

  9. VS中Debug和Realease、及静态库和动态库的区别整理(转)

    原文出自:http://www.cnblogs.com/chensu/p/5632486.html 一.Debug和Realease区别产生的原因 Debug 通常称为调试版本,它包含调试信息,并且不 ...

随机推荐

  1. sysbench对MySQL的压测

    QPS - query per second TPS - transaction per second 不是特别关注,每个业务场景中事务标准是不一样的 Ⅰ.sysbench测试框架 Ⅱ.常用测试脚本 ...

  2. 修改了my.ini没有效果,MySql的字符集还是没有变成utf8——mysql中文乱码

    https://www.jianshu.com/p/554b9575c5da Windows下修改MySql 5.6的字符集,根据网上提供的方法.就是修改my.ini配置文件,然后增加几个字段就可以了 ...

  3. 为什么vue里面data里面的对象,无法用delete删除属性

    因为vue里面的data是用get赋值的,所以无法用delete, 这时你可以用Object.defineProperty() Object.defineProperty(basic,'photo', ...

  4. 理解 Memory barrier(内存屏障)无锁环形队列

    原文:https://www.cnblogs.com/my_life/articles/5220172.html Memory barrier 简介 程序在运行时内存实际的访问顺序和程序代码编写的访问 ...

  5. MySQL中的EXPLAIN

    使用EXPLAIN加上SELECT语句可以获取优化器的查询执行计划 MySQL会在查询上设置一个标记,当执行查询时,这个标记会返回关于在执行计划中每一步的信息,而不是执行它.它会返回一行或多行信息,一 ...

  6. Unity3D 代码加密保护工具

    加密方式   对于Unity3D的保护方式,主要是通过Virbox Protector Standalone对Unity3D程序的整个生成目录进行加密,可以保护Unity的主要代码逻辑不被反编译,最大 ...

  7. condition版生产者与消费者模式

    1.简介 在爬虫中,生产者与消费者模式是经常用到的.我能想到的比较好的办法是使用redis或者mongodb数据库构造生产者消费者模型.如果直接起线程进行构造生产者消费者模型,线程容易假死,也难以构造 ...

  8. vi命令插入

    1.插入 i :在当前光标前插入 I:在当前行的行首插入 a:在当前光标后插入 A:在当前行的行尾插入 o:在当前行的下面另起一行插入 O:在当前行的上面另起一行插入 s:删除当前光标的字符并开始插入 ...

  9. 【Solution】API测试工具,访问方式

    1. post的时候,@requestBody 用 json的传递方式

  10. python集合set相关操作

    定义: 1.不同元素组成 2.无序 3.集合中的元素必须是不可变类型 创建集合 1 s = {1,2,3,4,5,6,7,8} 1.定义可变集合 1 2 3 >>> set_test ...