资源描述:
《jsp中动态include与静态include的区别》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、java面试笔试题:JSP中动态INCLUDE与静态INCLUDE的区别?[日期:2008-09-15]来源: 作者:志伟 动态INCLUDE用jsp:include动作实现它总是会检查所含文件中的变化,适合用于包含动态页面,并且可以带参数. 静态INCLUDE用include伪码实现,定不会检查所含文件的变化,适用于包含静态页面<%@includefile="included.htm"%> 下面非常详
2、细地解析了有关JSP动态INCLUDE和静态INCLUDE的使用方法及其区别: 我们都知道在jsp中include有两种形式,分别是 <%@includefile=""%> 前者是指令元素、后者是行为元素.具体它们将在何处用?如何用及它们有什么区别?这应该是很多人看到它都会想到的问题.下面一起来看看吧. 通常当应用程序中所有的页面的某些部分(例如标题、页脚和导航栏)都相同的时候,我们就可以考虑用include.具体在
3、哪些时候用<%@includefile=""%>,哪些时候用.这种形式.首先要明白的是它们之间的区别.只有了解了它们用法的不同才理解该在何时去用以及如何选择. <%@includefile=""%>,jsp的include指令元素读入指定页面的内容.并把这些内容和原来的页面融合到一起.(这个过程是在翻译阶段:也就是jsp被转化成servlet的阶段进行的. 这里对翻译阶段进行一下说明:我们知道,jsp页面不能原封不动地被传送给浏览
4、器,所有的jsp元素都必须首先由服务器进行处理.这是通过将jsp页面转达化成servlet,然后执行这个servlet来完成的.服务器需要一个jsp容器来处理jsp页面.jsp容器通常以servlet的形式来实现,这个servlet经过配置,可以处理对jsp页面的所有请求. Jsp容器负责将jsp页面转化成servlet(称为jsp页面实现类?JSPPageimplementationclass),并编译这个servlet.这两步就构成了翻译阶段. 由此我们就会知道:jsp页面是把include
5、指令元素所指定的页面的实际内容(也就是代码段)加入到引入它的jsp页面中,合成一个文件后被jsp容器将它转化成servlet.可以看到这时会产生一个临时class文件和一个java文件.下面举个例子. 服务器用tomcat,引入页面的jsp文件叫test.jsp.被引入的页面叫date.jsp.这个jsp文件里存放的是一个有关时间的jsp代码,当前的上下文根设为test //======date.jsp的源文件=====// <%@pagelanguage="java"contentType
6、="text/html;charset=gb2312"%> <% java.util.Datedate=newjava.util.Date(); Stringdate_cn=""; StringdateStr=""; switch(date.getDay()) { case0:date_cn="日";break; case1:date_cn="一";break; case2:date_cn="二";break; case3:date_cn="三";break;
7、 case4:date_cn="四";break; case5:date_cn="五";break; case6:date_cn="六";break; } dateStr=(1900+date.getYear())+"年"+(date.getMonth()+1)+"月"+date.getDate()+"日(星期"+date_cn+")"; %> document.write("<%=dateStr%>"); //======以下是test.jsp的源文件===========
8、==// <%@pagelanguage="java"contentType="text/html;charset=gb2312"%>
include的两种用法 <%--@includefile="date.jsp"%--> //我们在这里用include的两种不同形式来引