java缓存技术-OSCache简介

Opensymphony ( 中文:open交响乐)http://www.opensymphony.com)是一个很好提供开源项目的组织。
Jakarta(中文:雅加达(印度尼西亚首都))http://jakarta.apache.org/)相比,这里的组件(Component)更多的是精致小巧的设计,它们尤以简单易用和可插拔的灵活性见长。

OSCache:J2EE Caching机制。它主要用于

1 java缓存技术-OSCache简介 JSP Caching
2 java缓存技术-OSCache简介Request Caching
3 java缓存技术-OSCache简介General - Purpose Cache

三个方面。

在JSP Caching、Request Caching方面,OSCache能够解决动态网站的基本问题:缓存动态内容、缓存二进制内容、错误包容。

在General-Purpose Cache方面,在Java应用中通过调用OSCache的API来缓存任意的Java对象,
hibernate从 2.0开始对其也有支持。

OSCache标记库是一种开创性的JSP定制标记应用,提供了在现有JSP页面之内实现快速内存缓冲的功能。虽然已经有一些供应商在提供各种形式的缓存产品,但是,它们都属于面向特定供应商的产品。OSCache能够在任何JSP 1.2兼容的服务器上运行,它不仅能够为所有用户缓冲现有JSP代码块,而且能够以用户为单位进行缓冲。

OSCache还包含一些提高可伸缩性的高级特性,比如:

1 java缓存技术-OSCache简介 缓冲到磁盘
2 java缓存技术-OSCache简介可编程的缓冲刷新
3 java缓存技术-OSCache简介异常控制,

等等。

网上对OSCache的介绍大多是关于JSP Caching、Request Caching方面的,

对任意java对象的缓冲大多数人选择了JCS。由于种种原因,hibernate 2.0 放弃了对 JCS 的支持,所以才引起了我对 OSCache 的关注,下面是我参考 hibernate 的源码对 OSCache 做的简单封装
代码内容

1 java缓存技术-OSCache简介 java缓存技术-OSCache简介 public interface Cache java缓存技术-OSCache简介 {
2 java缓存技术-OSCache简介 Object get(Object key) throws CacheException;
3 java缓存技术-OSCache简介void put(Object key, Object value) throws CacheException;
4 java缓存技术-OSCache简介void remove(Object key) throws CacheException;
5 java缓存技术-OSCache简介void clear() throws CacheException;
6 java缓存技术-OSCache简介void destroy() throws CacheException;
7 java缓存技术-OSCache简介 }

 

1 java缓存技术-OSCache简介 java缓存技术-OSCache简介 public class OSCache implements Cache java缓存技术-OSCache简介 {
2 java缓存技术-OSCache简介private GeneralCacheAdministrator cache = null ;
3 java缓存技术-OSCache简介java缓存技术-OSCache简介public OSCache(Properties prop) java缓存技术-OSCache简介 {
4 java缓存技术-OSCache简介 cache = new GeneralCacheAdministrator(prop);
5 java缓存技术-OSCache简介 }

6 java缓存技术-OSCache简介
7 java缓存技术-OSCache简介java缓存技术-OSCache简介public void setCacheCapacity( int cacheCapacity) java缓存技术-OSCache简介 {
8 java缓存技术-OSCache简介 cache.setCacheCapacity(cacheCapacity);
9 java缓存技术-OSCache简介 }

10 java缓存技术-OSCache简介
11 java缓存技术-OSCache简介java缓存技术-OSCache简介public Object get(Object key) throws CacheException java缓存技术-OSCache简介 {
12 java缓存技术-OSCache简介java缓存技术-OSCache简介try java缓存技术-OSCache简介 {
13 java缓存技术-OSCache简介return cache.getFromCache(String.valueOf(key));
14 java缓存技术-OSCache简介java缓存技术-OSCache简介 }
catch (NeedsRefreshException e) java缓存技术-OSCache简介 {
15 java缓存技术-OSCache简介 cache.cancelUpdate(String.valueOf(key));
16 java缓存技术-OSCache简介return null ;
17 java缓存技术-OSCache简介 }

18 java缓存技术-OSCache简介 }

19 java缓存技术-OSCache简介
20 java缓存技术-OSCache简介java缓存技术-OSCache简介public void put(Object key, Object value) throws CacheException java缓存技术-OSCache简介 {
21 java缓存技术-OSCache简介 cache.putInCache(String.valueOf(key), value);
22 java缓存技术-OSCache简介 }

23 java缓存技术-OSCache简介
24 java缓存技术-OSCache简介java缓存技术-OSCache简介public void remove(Object key) throws CacheException java缓存技术-OSCache简介 {
25 java缓存技术-OSCache简介 cache.flushEntry(String.valueOf(key));
26 java缓存技术-OSCache简介 }

27 java缓存技术-OSCache简介
28 java缓存技术-OSCache简介java缓存技术-OSCache简介public void clear() throws CacheException java缓存技术-OSCache简介 {
29 java缓存技术-OSCache简介 cache.flushAll();
30 java缓存技术-OSCache简介 }

31 java缓存技术-OSCache简介
32 java缓存技术-OSCache简介java缓存技术-OSCache简介public void destroy() throws CacheException java缓存技术-OSCache简介 {
33 java缓存技术-OSCache简介 cache.destroy();
34 java缓存技术-OSCache简介 }

35 java缓存技术-OSCache简介 }

 

1 java缓存技术-OSCache简介 java缓存技术-OSCache简介 public class CacheManager java缓存技术-OSCache简介 {
2 java缓存技术-OSCache简介// $SUP-USP$
3 java缓存技术-OSCache简介 private static Map cacheMap = new HashMap();
4 java缓存技术-OSCache简介private static Config config = ConfigManager.getConfig();
5 java缓存技术-OSCache简介
6 java缓存技术-OSCache简介java缓存技术-OSCache简介private CacheManager() java缓存技术-OSCache简介 {
7 java缓存技术-OSCache简介 }

8 java缓存技术-OSCache简介
9 java缓存技术-OSCache简介java缓存技术-OSCache简介public static Cache getCache(Class clazz) java缓存技术-OSCache简介 {
10 java缓存技术-OSCache简介return getCache(clazz.getName());
11 java缓存技术-OSCache简介 }

12 java缓存技术-OSCache简介
13 java缓存技术-OSCache简介java缓存技术-OSCache简介public static Cache getCache(String cacheId) java缓存技术-OSCache简介 {
14 java缓存技术-OSCache简介 Cache cache = null ;
15 java缓存技术-OSCache简介 cache = (Cache) cacheMap.get(cacheId);
16 java缓存技术-OSCache简介java缓存技术-OSCache简介if (cache == null ) java缓存技术-OSCache简介 {
17 java缓存技术-OSCache简介 cache = new OSCache(config.getProperties());
18 java缓存技术-OSCache简介 cacheMap.put(cacheId, cache);
19 java缓存技术-OSCache简介 }

20 java缓存技术-OSCache简介return cache;
21 java缓存技术-OSCache简介 }

22 java缓存技术-OSCache简介 }

 

你可能感兴趣的:(OScache)