1.使用oscache实现页面缓存,oscache使用的域是application,页面缓存是缓存的请求的url,当用户访问相同的url是就不走controller,而直接走保存在本地的缓存文件。
2.如果你要局部缓存到本地的话,在src资源文件夹下面一定要有oscache.properties文件,并且修改里面的配置使其保存到本地的磁盘。
3.需要加入的jar文件 commons-logging.jar和 oscache-2.4.1.jar
4.配置局部要修改oscache.properties文件的配置为
cache.memory=false
cache.path=d:\\cache (指定,缓存保存的路径,注意:路径应采用双\符)
cache.persistence.class=com.opensymphony.oscache.plugins.diskpersistence.DiskPersistenceListener
cache.persistence.class用于设置持久化类。
5.如果要配置全局的oscache需要在web.xml配置如下过滤器,两个小时后再访问相同的url会走controller,3个夹红的分别是多久时间再次访问后台单位为秒,域是application,缓存的url。
<filter>
<filter-name>CacheFilter</filter-name>
<filter-class>com.opensymphony.oscache.web.filter.CacheFilter</filter-class>
<init-param>
<param-name>time</param-name>
<span style="color:#ff6666;"> <param-value>7200</param-value></span>
</init-param>
<init-param>
<param-name>scope</param-name>
<span style="color:#ff6666;"> <param-value>application</param-value></span>
</init-param>
</filter>
<filter-mapping>
<filter-name>CacheFilter</filter-name>
<span style="color:#ff6666;"><url-pattern>*.jsp</url-pattern></span>
</filter-mapping>
6.效果(Debug测试)
当第一次访问http://localhost:8080/product/display/list.shtml这个url会走后台方法,再两个小时内访问就直接显示不访问页面方法