JSP中动态include与静态include的区别介绍
Author:[email protected] Date:
动态INCLUDE
用法:<jsp:include page="included.jsp" flush="true" />
说明:它总是会检查所含文件中的变化,适合用于包含动态页面,并且可以带参数,先编译之后再进行处理。
原因:1、静态include的结果是把其他jsp引入当前jsp,两者合为一体。
2、静态include纯粹是把代码写在外面的一种共享方法,所有的变量都是可以和include它的主文件共享,两者高度紧密结合,不能有变量同名的冲突.而页面设置也可以借用主文件的.
<%@ include file=” ”%>,jsp的include指令元素读入指定页面的内容。并把这些内容和原来的页面融合到一起。(这个过程是在翻译阶段:也就是jsp被转化成servlet的阶段进行的。)
这里对翻译阶段进行一下说明:我们知道,jsp页面不能原封不动地被传送给浏览器,所有的jsp元素都必须首先由服务器进行处理。这是通过将jsp页面转达化成servlet,然后执行这个servlet来完成的。服务器需要一个jsp容器来处理jsp页面。jsp容器通常以servlet的形式来实现,这个servlet经过配置,可以处理对jsp页面的所有请求。
Jsp容器负责将jsp页面转化成servlet(称为jsp页面实现类?JSP Page implementation class),并编译这个servlet。这两步就构成了翻译阶段.
由此我们就会知道:jsp页面是把include指令元素所指定的页面的实际内容(也就是代码段)加入到引入它的jsp页面中,合成一个文件后被jsp容器将它转化成servlet。可以看到这时会产生一个临时class文件和一个java文件。下面举个例子。
服务器用tomcat,引入页面的jsp文件叫test.jsp。被引入的页面叫date.jsp.这个jsp文件里存放的是一个有关时间的jsp代码,当前的上下文根设为test
静态INCLUDE
用法:<%@ include file="included.htm" %>
说明:用include伪码实现,定不会检查所含文件的变化,适用于包含静态页面,直接将内容先包含后处理。
原因:1、动态include的结构是两者独立,直到输出时才合并( 看看jsp生成的java文件就可以知道了)。
2、动态include的jsp文件独立性很强,是一个单独的jsp文件,需要使用的对象,页面设置,都必须有自己创建,当然,还好它和include它的页面的request范围是一致的。
注意:
(1)被包含的文件中不能含有<html>,</html>,<body>,或</body>标签。因为被包含的文件的全部内容将被插入到JSP文件中include指令所在的地方,这些标签将会同JSP文件中已有的同样的标签发生冲突。
(2)假如被包含的文件发声变化,主JSP页面将被重新编译。
转载本站文章《JSP中动态include与静态include的区别介绍》,
请注明出处:https://www.zhoulujun.cn/html/java/jsp/2016_0309_7686.html
延伸阅读:
- jsp和php综合性对比
- php vs jsp
- 佛教与道教斗争简史
- 基于ZooKeeper的分布式Session实现
- session机制详解以及session的相关应用
- 理智地看待吃素与修佛——特别整理,请勿拍砖
- 禅宗与南北朝时期的玄学
- 陈浩武:慧能和神秀:南北禅宗之争
- 论南禅自由思想的社会背景与理论渊源
- 从“即心即佛”到“非心非佛”:南禅美学思想嬗变轨迹
- 六祖慧能的不立文字和不拘一说
- 慧律法师《世间人对佛教的误解》
- 金刚经原文
- 算命是对宗教的背叛 —有信仰的人都不应该算命
- 佛家对世间的算命、仙家、道家我们看看法
- 佛家对算命的态度:从佛的本性、基本法则出发—反对算命
- 教你看精液化验报告
- 精子几只才及格—要多少精液才能受孕?精子质量下降
- 男人你的精液颜色正常吗?分析精液认知健康—看精诊病
- 男性精液量多少才正常?多赚金子,多生精子,性福满满
- 敷面膜不如吃精液?健康精液有益处,话说吞精
- 男性不孕不育—阴囊温度高让你无子—睾丸炎让你断子绝孙
- JavaBean的详细及引用
- 各个JSON技术的比较
- json字符串多层嵌套解释成java对象——java解释多层嵌套json
- WEB-INF目录下的jsp页面如何访问WebRoot中的CSS和JS文件