JSP中动态INCLUDE与静态INCLUDE的区别

JSP中有两种包含语句:
1. <%@include file="head.jsp" %>
2. <jsp:include page="head.jsp" />
   或者:
  <jsp:include page="jieshou.jsp">
   <jsp:param name="canshu" value="magci" />
   </jsp:include>

两种包含的区别:

1.<%@include file="uri" %>:先包含后处理
   a.不管被包含文件是静态还是动态,直接将页面中的全部内容包含进来;
   b.执行时先将包含进来的内容一起处理完之后再将所有的内容发给客户端。

2.<jsp:include page="uri" />:先处理后包含
   a.能自动区分被包含文件是静态还是动态;
   b.如果被包含文件是静态文件,处理方式跟第1种方式一样,
     如果是动态文件,则各自处理完之后把结果包含进来发给客户端。

实例:
被包含页面(inc.jsp):


<%
    int i=2; 
%>
<h1>inc.jsp:<%=i%></h1>



使用<%@include file="uri" %>包含:


<html>
  <head>
    <title>include1</title>
  </head>
  <body>
     <%
         int i=1; 
     %>
     <%@include file="inc.jsp" %>
     <h1>JSP:<%=i %></h1>
  </body>
</html>


使用<jsp:include page="uri" />包含:

<html>
  <head>
    <title>include2</title>
  </head>
  <body>
     <%
         int i=1; 
     %>
     <jsp:include page="inc.jsp" />
     <h1>JSP:<%=i %></h1>
  </body>
</html>


通过以上实例可以看出:
第一种方法出现错误:变量重复定义;
第二种方法可以得到结果。
阅读更多
文章标签: include jsp
个人分类:
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭