现在的位置: 首页 > 综合 > 正文

JSP动态包含与静态包含

2012年12月10日 ⁄ 综合 ⁄ 共 1278字 ⁄ 字号 评论关闭

<jsp:include>动态包含与静态包含

动态INCLUDE
用jsp:include动作实现 <jsp:include page="included.jsp" flush="true" />它总是会检查所含文件中的变化,适合用于包含动态页面,并且可以带参数。

(这里你必须使用flush="true",你不能使用false值.缺省值为false )
静态INCLUDE
用include伪码实现,定不会检查所含文件的变化,适用于包含静态页面<%@ include file="included.htm" %>
===================================================================
1. 静态include的结果是把其他jsp引入当前jsp,两者合为一体
动态include的结构是两者独立,直到输出时才合并( 看看jsp生成的java文件就可以知道了)
2.正是因为这样,动态include的jsp文件独立性很强,是一个单独的jsp文件,需要使用的对象,页面设置,都必须有自己创建,当然,还好它和include它的页面的request范围是一致的.
而静态include纯粹是把代码写在外面的一种共享方法,所有的变量都是可以和include它的主文件共享,两者高度紧密结合,不能有变量同名的冲突.而页面设置也可以借用主文件的.

本文来自: 脚本之家(www.jb51.net) 详细出处参考:http://www.jb51.net/article/13159.htm

 

 

include指令是静态引入的;而include动作是动态引入的。
静态与动态的include与页面内容无关。
与<%@include...%>不同的是,jsp:include 可以向被包含的页传递参数,但,如果传递参数的话,被包含的页必须是JSP页面。
例如:向被包含的页included2.jsp传递参数:
<jsp:include page="included2.jsp" flush="true">    
     <jsp:param name="ref1" value="AAA"/>
     <jsp:param name="ref2" value="BBB"/>
</jsp:include>
page属性: 相对路径指明被包含的文件
flush属性: 必须用true ,表示页面可刷新。
可以用jsp:param向被包含的动态页即JSP页传递参数(而include指令则不可以),参数以”参数名-值”对的形式传递,被包含的页使用request.getParameter(“参数名称”)可以获取相应参数的值

 

JSP中动态INCLUDE与静态INCLUDE的区别?动态INCLUDE用jsp:include动作实现它总是会检查所含文件中的变化,适合用于包含动态页面,并且可以带参数。静态INCLUDE用include伪码实现,定不会检查所含文件的变化,适用于包含静态页面

 

转载链接:http://blog.sina.com.cn/s/blog_5bba80460100cidt.html

抱歉!评论已关闭.