OSCACHE支援頁面層級緩衝和對象層級緩衝,支援叢集設定。工作量很小,但是對系統提升很大。測試一次成功,寫下此文記錄之。
1、下載OSCACHE包到LIB裡面,下載oscache.tld放到WEB-INF/classes裡面。
2、頁面代碼
以下COPY FROM http://www.cnblogs.com/clarkapp/admin/file:///G:/oscache
<%@ page import="java.util.*" %>
<%@ taglib uri="oscache" prefix="cache" %>
<html>
<body>
沒有緩衝的日期: <%= new Date() %><p>
<!--自動重新整理-->
<cache:cache time="30">
每30秒重新整理緩衝一次的日期: <%= new Date() %>
</cache:cache>
<!--手動重新整理-->
<cache:cache key="testcache">
手動重新整理緩衝的日期: <%= new Date() %> <p>
</cache:cache>
<a href="cache2.jsp">手動重新整理</a>
</body>
</html>
訪問該頁面可以達到緩衝的效果。
3、對於struts的Action的應用,則:將以下代碼加到web.xml裡面
<filter> <filter-name>CacheFilter</filter-name> <filter-class>com.opensymphony.oscache.web.filter.CacheFilter</filter-class> </filter> <filter> <filter-name>CacheFilter-disableCacheOnMethods</filter-name> <filter-class>com.opensymphony.oscache.web.filter.CacheFilter</filter-class> <init-param> <param-name>time</param-name> <param-value>60</param-value> </init-param> <init-param> <param-name>disableCacheOnMethods</param-name> <param-value>POST,PUT,DELETE</param-value> </init-param> <init-param> <param-name>oscache-properties-file</param-name> <param-value>/oscache-cachefilter-disableCacheOnMethods.properties</param-value> </init-param> </filter>
注意放在Struts2的過濾器之前。
5、要點,頁面要緩衝的東西就這麼寫:
<cache:cache key="cacheid">
*****
</cache:cache>
注意不同的頁面之間使用的Id不要一樣,否則會串頁面