<%@ include file="..." %>
1.这是静态包含指令,是在转换之前把包含的文件合在一起,然后再编译,从而只生成一个java文件和一个class文件。
2.因为在编译之前合在一起的,所以在file中传递参数是没有意义的。
3.包含页面和被包含页面访问的是同一个request对象,因为是同一个servlet,同在_jspService()方法中。
4.两个页面必须使用相同的编码。
<jsp:include page="..." flush="true"/>
1.这是动态包含,当执行到被包含页面时,才转换,所以产生两个java和class文件。
2.两个文件的request对象不是同一个,但被包含页面可以取得包含页面的参数。
3.从而动态包含可以传参数。
4.也可以通过标签传递参数,类似于page中传参,如下:
<jsp:include page="..."flush=true>
<jsp:param name="..." value="..."/>
<jsp:param name="..." value="..."/>
</jsp:include>
1.这是静态包含指令,是在转换之前把包含的文件合在一起,然后再编译,从而只生成一个java文件和一个class文件。
2.因为在编译之前合在一起的,所以在file中传递参数是没有意义的。
3.包含页面和被包含页面访问的是同一个request对象,因为是同一个servlet,同在_jspService()方法中。
4.两个页面必须使用相同的编码。
<jsp:include page="..." flush="true"/>
1.这是动态包含,当执行到被包含页面时,才转换,所以产生两个java和class文件。
2.两个文件的request对象不是同一个,但被包含页面可以取得包含页面的参数。
3.从而动态包含可以传参数。
4.也可以通过标签传递参数,类似于page中传参,如下:
<jsp:include page="..."flush=true>
<jsp:param name="..." value="..."/>
<jsp:param name="..." value="..."/>
</jsp:include>