这几天在写web表现层的东西,由于对jsp不是很熟悉,在使用include的时候就遇到了问题。
可能是用OOP久了,写什么都想封装起来,写jsp的时候就想使用include。我在一个parent.jsp中使用
<%@include file="sub.jsp"%>
include了一个sub.jsp,之后就发现我在刷新parent.jsp的时候不能同时刷新sub.jsp,百思不得其解,听高手说把IE的Cache禁用了就行了,但使用
<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache"> 这个禁了之后还是不行,最后到论坛上逛了一圈儿才发现原来是我的标签使用错了,应该使用jsp:include标签,@include file主要用于静态的内容引用,就相当于把被引用的文件代码(sub.jsp)直接copy到主页面(parent.jsp)中。而jsp:include可以随时更新sub.jsp的内容,只要把属性flush设为true。
要详细了解的可以看看以下两篇文章:
http://www-900.ibm.com/developerWorks/cn/java/j-jsp04153/
http://www-900.ibm.com/developerWorks/cn/java/j-jsp04293/