<jsp:include>与<%@include%>的不同
来源:互联网 发布:pyro fireshooter淘宝 编辑:程序博客网 时间:2024/06/16 14:49
<jsp:include> :动态包含
第一种情况(<jsp:include>包含的是html文件):
DynamicInclude.jsp:
Header.html :
运行之后,只生成一个servlet,和上面的代码对应如下:
第二种情况(<jsp:include>包含的是jsp文件):
DynamicInclude.jsp:
Header.jsp :
运行之后,生成了两个servlet:DynamicInclude_jsp.Java和header_jsp.java,这也是为什么 Header.jsp中要写上<%@page contentType="text/html;charset=gb2312"%>和完整的<html></html>和<body></body>,而Header.html不用写的原因。因为前者两个.jsp文件是两个相互独立的整体,它们之间的关系是通过request和reponse来发生的,而后者只是简单的嵌套。两个servlet对应的代码如下:
DynamicInclude_jsp.java:
header_jsp.java:
<%@include%>:静态包含
第一种情况:<%@include%>包含的是jsp文件。
StaticInclude.jsp:
header.jsp:
运行之后,只生成一个servlet,和上面的代码对应如下:
第二种情况:<%@include%>包含的是html文件。
StaticInclude.jsp:
header.html:
运行之后,也是只生成一个servlet,和上面的代码对应如下:
由上可以总结出:
对于静态包含,<%@include%>,中包含的文件,只是简单的嵌入到主文件中,就是在jsp页面转化成Servlet时才嵌入到主文件中,因为运行的结果是只生成了一个Servlet。
而对于动态包含<jsp:incude>,如果被包含文件是动态的,那么就会生成两个Servlet,也就是被包含文件也要经过jsp引擎编译执行生成一个Servlet,两个Servlet通过request和reponse进行通信。如果被包含的文件是静态的,那么这种情况和<%@include>就很相似,只生成了一个Servlet,但是他们之间没有进行简单的嵌入,而依然是通过request和reponse进行的通信。
- <jsp:include>与<%@include%>的不同
- 【JSP--@include与jsp:include的区别】
- jsp include与include
- <%@ include%>与<jsp:include>
- %@ include 与 jsp:Include的区别
- @include与jsp:include的区别
- include 与 jsp:include的区别
- jsp include 与 @include 的差别
- jsp:include与include的区别
- <jsp:include>与include指令的区别
- <jsp:include>与include指令的区别
- <jsp:include>与include指令的比较
- jsp:include与include的区别
- @include与jsp:include的区别
- @include与jsp:include的区别
- @include与jsp:include的区别
- include file与jsp include 的区别
- <%@include%>与<jsp:include>的区别
- [Solr6.2.1 self learning 2] SolrJ 6.2.1 integration
- logstash输出到elasticsearch多索引
- 对于用javascript写贪吃蛇应用
- web开发——input标签的type属性解析
- 山科大 oj 筛选素数
- <jsp:include>与<%@include%>的不同
- Python内存管理(二 arena和缓存池)
- qt4添加资源文件的方法
- uva1025 A Spy in the Metro
- Mybatis的<where><foreach><set>等标签详解
- WebView的使用
- Expressbody-parser(四)
- Spring+Spring MVC+Mybatis+Maven搭建多模块项目(二)
- manacher算法模板