JSP中两种include的区别

jsp中有两种include,一种是<%@include file="xxx.jsp"%>,另一种是<jsp:include page="xxx.jsp"/>。

<%@include file="xxx.jsp"%>

1.这是一种Driective指令,是一种编译指令,是在编译期间的指令,是静态包含,即将指定的JSP页面或HTML页面包含进来,整个页面一起编译。

2.不能在include指令里面传递参数,如<%@include file="xxx.jsp?aa=1"%>是不合法的,只能在运行JSP页面后,在URL地址栏上传递参数。

3.若当前页面中有<%@page%>指令,则xxx.jsp这个被包含的页面中的<%@page%>指令中 不能存在与当前页面<%@page%>指令中相同的元素,不然会报错。

<jsp:include page="xxx.jsp"/>

1.这是一种Action指令,用于动态包含JSP程序或HTML页面。

2.除非该指令被运行到,否则不会被Tomcat等JSP Engine编译

3.可以携带参数,代码如下:

 

[html] view plain copy
 
  1. <jsp:include page="included.jsp">  
  2.     <jsp:param name="user" value="aa" />  
  3. </jsp:include>  
posted @ 2018-01-30 16:21  小菜鸟321  阅读(158)  评论(0编辑  收藏  举报