jsp:include(动态包含)和@include(静态包含)的区别:
<jsp:include page="relative URL" flush="true" />
page 包含在页面中的相对URL地址。
flush 布尔属性,定义在包含资源前是否刷新缓存区。
1.jsp:include通过page属性包含文件 @include通过file属性包含文件
2.jsp:include 是在请求阶段向被包含的页面发起了一个请求,
页面响应的内容被包含到了当前页面
@include 是直接将被包含文件的内容替换到了当前页面,如果当前页面和被包含页面出现相同的变量定义,会出现编译异常
3.jsp:include 转译成两个java文件,@include转译成一个java文件
4.jsp:include 可以通过jps:parm传递参数,@include则不能
<jsp:include page="header.jsp">
<jsp:param value="阳光总在风云后" name="test"/>
</jsp:include>
定义了两个文件date.jsp和main.jsp,代码如下所示:
date.jsp文件代码:
<p>当前日期: <%= (new java.util.Date()).toLocaleString()%></p>
main.jsp文件代码:
<html><head><title>The include Action Example</title></head>
<body><center>
<h2>The include action Example</h2>
<jsp:include page="date.jsp" flush="true" />
</center></body></html>
现在将以上两个文件放在服务器的根目录下,访问main.jsp文件。显示结果如下:
当前日期: 12-Sep-2015 15:54:22
<jsp:include page="relative URL" flush="true" />
page 包含在页面中的相对URL地址。
flush 布尔属性,定义在包含资源前是否刷新缓存区。
1.jsp:include通过page属性包含文件 @include通过file属性包含文件
2.jsp:include 是在请求阶段向被包含的页面发起了一个请求,
页面响应的内容被包含到了当前页面
@include 是直接将被包含文件的内容替换到了当前页面,如果当前页面和被包含页面出现相同的变量定义,会出现编译异常
3.jsp:include 转译成两个java文件,@include转译成一个java文件
4.jsp:include 可以通过jps:parm传递参数,@include则不能
<jsp:include page="header.jsp">
<jsp:param value="阳光总在风云后" name="test"/>
</jsp:include>
定义了两个文件date.jsp和main.jsp,代码如下所示:
date.jsp文件代码:
<p>当前日期: <%= (new java.util.Date()).toLocaleString()%></p>
main.jsp文件代码:
<html><head><title>The include Action Example</title></head>
<body><center>
<h2>The include action Example</h2>
<jsp:include page="date.jsp" flush="true" />
</center></body></html>
现在将以上两个文件放在服务器的根目录下,访问main.jsp文件。显示结果如下:
当前日期: 12-Sep-2015 15:54:22