OSCache是当前运用最广的缓存方案,

JBoss

Hibernate

Spring

等都对其有支持,下面简单介绍一下OSCache的配置和使用过程。



1.安装过程

http://www.opensymphony.com/oscache/download.html下载合适的OSCache版本,我下载的是oscache-2.3.1版本。解压缩下载的文件到指定目录,从解压缩目录取得oscache-2.3.1.jar文件放到
/WEB-INF/lib 或相应类库目录 ,从src或etc目录取得oscache.properties 文件,放入src根目录或发布环境的/WEB-INF/classes 目录,



如你需要建立磁盘缓存,须修改oscache.properties 中的cache.path信息 (去掉前面的#注释)。

win类路径类似为c://app//cache

unix类路径类似为/opt/myapp/cache

2.oscache.properties 文件配置向导



cache.memory值为true 或 false ,默认为在内存中作缓存,如设置为false,那cache只能缓存到数据库或硬盘中,那cache还有什么意义:)



cache.capacity : 缓存元素个数



cache.persistence.class : 持久化缓存类,如此类打开,则必须设置cache.path信息



cache.cluster 相关 : 为集群设置信息。如

cache.cluster.multicast.ip为广播IP地址

cache.cluster.properties为集群属性

3.OSCache的基本用法



cache1.jsp 内容如下

<%@ page
import="java.util.*"
%>

<%@ taglib uri="oscache"
prefix="cache"
%>

<html>


<body>

没有缓存的日期:
<%=
new Date()
%><p>


<!--自动刷新-->


">

每30秒刷新缓存一次的日期:
<%=
new Date()
%>


</cache:cache>


<!--手动刷新-->


<cache:cache key="testcache">

手动刷新缓存的日期:
<%=
new Date()
%> <p>


</cache:cache>


<a href="cache2.jsp">手动刷新</a>


</body>

</html>

cache2.jsp 执行手动刷新页面如下

<%@ taglib uri="oscache"
prefix="cache"
%>

<html>


<body>

缓存已刷新<p>


<cache:flush key="testcache"
scope="application"/>


<a href="cache1.jsp">返回</a>


</body>

</html>

你也可以通过下面语句定义Cache的有效范围,如不定义scope,scope默认为Applcation

"
scope="session">




</cache:cache>

4. 缓存过滤器 CacheFilter



你可以在web.xml中定义缓存过滤器,定义特定资源的缓存。

<filter>


<filter-name>CacheFilter</filter-name>


<filter-class>com.opensymphony.oscache.web.filter.CacheFilter</filter-class>


<init-param>


<param-name>time</param-name>


</param-value>


</init-param>


<init-param>


<param-name>scope</param-name>


<param-value>session</param-value>


</init-param>

</filter>







<filter-mapping>


<filter-name>CacheFilter</filter-name>


<url-pattern>*.jsp</url-pattern>

</filter-mapping>

上面定义将缓存所有.jsp页面,缓存刷新时间为60秒,缓存作用域为Session



注意:

CacheFilter只捕获Http头为200的页面请求,即只对无错误请求作缓存,

)作缓存处理

OSCache使用指南的更多相关文章

  1. javaWeb Cache技术――OSCache(转-全)

    什么是osCache? 它是:http://baike.baidu.com/view/1835163.htm?fr=aladdin OSCache使用指南 一.下载安装 OSCache是一个基于web ...

  2. Cache技术――OSCache(转-全)

    OSCache使用指南 一.下载安装 OSCache是一个基于web应用的组件,他的安装工作主要是对web应用进行配置,大概的步骤如下: 1. 下载.解压缩OSCache 从http://www.op ...

  3. Cache技术―OSCache

    Cache技术―OSCache 版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明http://aumy2008.blogbus.com/logs/36462938.html 一.简介 ...

  4. JavaScript权威指南 - 函数

    函数本身就是一段JavaScript代码,定义一次但可能被调用任意次.如果函数挂载在一个对象上,作为对象的一个属性,通常这种函数被称作对象的方法.用于初始化一个新创建的对象的函数被称作构造函数. 相对 ...

  5. UE4新手之编程指南

    虚幻引擎4为程序员提供了两套工具集,可共同使用来加速开发的工作流程. 新的游戏类.Slate和Canvas用户接口元素以及编辑器功能可以使用C++语言来编写,并且在使用Visual Studio 或 ...

  6. JavaScript权威指南 - 对象

    JavaScript对象可以看作是属性的无序集合,每个属性就是一个键值对,可增可删. JavaScript中的所有事物都是对象:字符串.数字.数组.日期,等等. JavaScript对象除了可以保持自 ...

  7. JavaScript权威指南 - 数组

    JavaScript数组是一种特殊类型的对象. JavaScript数组元素可以为任意类型,最大容纳232-1个元素. JavaScript数组是动态的,有新元素添加时,自动更新length属性. J ...

  8. const extern static 终极指南

    const extern static 终极指南 不管是从事哪种语言的开发工作,const extern static 这三个关键字的用法和原理都是我们必须明白的.本文将对此做出非常详细的讲解. co ...

  9. Atitit.研发管理软件公司的软资产列表指南

    Atitit.研发管理软件公司的软资产列表指南 1. Isv模型下的软资产1 2. 实现层面implet1 3. 规范spec层1 4. 法则定律等val层的总结2 1. Isv模型下的软资产 Sof ...

随机推荐

  1. java -jar 和 java -cp 的区别

    https://blog.csdn.net/weixin_38653290/article/details/84647019 1.pom中build指定mainClass 但是 META-INF\MA ...

  2. UML-领域模型-添加关联和属性

    1.何谓关联? 关联(association):一个类的全局变量引用了另一个类,就表示关联了这个类 2.何时使用关联? 长时间(需要记住)留存的需要关联:短时间的不需要.比如: 需要关联:老师教那些课 ...

  3. HNOI2018/AHOI2018 游戏

    这题放过了暴力其实就没啥意思了 虽然暴力复杂度很玄学,但是思维水平确实没啥 Description link 题意概述:现在有一条长度为 \(n\) 的链,有些边是有限制的 限制为能到某个点,才能经过 ...

  4. 漫谈设计模式(二):单例(Singleton)模式

    1.前言 实际业务中,大多业务类只需要一个对象就能完成所有工作,另外再创建其他对象就显得浪费内存空间了,例如web开发中的servlet,这时便要用到单例模式,就如其名一样,此模式使某个类只能生成唯一 ...

  5. Tensorflow学习教程------读取数据、建立网络、训练模型,小巧而完整的代码示例

    紧接上篇Tensorflow学习教程------tfrecords数据格式生成与读取,本篇将数据读取.建立网络以及模型训练整理成一个小样例,完整代码如下. #coding:utf-8 import t ...

  6. MySQL--启动和关闭MySQL服务

    1.Windows下 启动服务 mysqld --console 或 net start mysql 关闭服务 mysqladmin -uroot shudown 或 net stop mysql 2 ...

  7. Java文字识别软件-调用百度ocr实现文字识别

    java_baidu_ocr Java调用百度OCR文字识别API实现图片文字识别软件 这是一款小巧方便,强大的文字识别软件,由Java编写,配上了窗口界面 调用了百度ocr文字识别API 识别精度高 ...

  8. ubuntu16.04更换 apt-get 阿里源

    deb-src http://archive.ubuntu.com/ubuntu xenial main restricted #Added by software-properties deb ht ...

  9. 函数动态传参,命名空间,gloabal,nonlocal关键字

    一.函数参数->动态传参(形参的第三种) 动态参数分为两种: 1)动态接收位置参数 普通的位置传参: def func(quality_food,junk_food): print('我要吃', ...

  10. F. Rhyme scheme

    题: https://nanti.jisuanke.com/t/41414 #include<bits/stdc++.h> using namespace std; typedef __i ...