`

OSCache简介

    博客分类:
  • java
阅读更多

 

Opensymphonyhttp://www.opensymphony.com)是一个很好提供开源项目的组织。同Jakarta相比,这里的组件(Component)更多的是精致小巧的设计,它们尤以简单易用和可插拔的灵活性见长。

OSCacheJ2EE Caching机制。它主要用于JSP CachingRequest CachingGeneral-Purpose Cache三个方面。在JSP CachingRequest Caching方面,OSCache能够解决动态网站的基本问题:缓存动态内容、缓存二进制内容、错误包容。在General-Purpose Cache方面,在Java应用中通过调用OSCacheAPI来缓存任意的Java对象,hibernate 2.0开始对其也有支持。

OSCache标记库是一种开创性的JSP定制标记应用,提供了在现有JSP页面之内实现快速内存缓冲的功能。虽然已经有一些供应商在提供各种形式的缓存产品,但是,它们都属于面向特定供应商的产品。OSCache能够在任何JSP 1.2兼容的服务器上运行,它不仅能够为所有用户缓冲现有JSP代码块,而且能够以用户为单位进行缓冲。OSCache还包含一些提高可伸缩性的高级特性,比如:缓冲到磁盘,可编程的缓冲刷新,异常控制,等等。

 

 


 

以上文字摘自moxie(安子)的《WebWork教程-0.90版》

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

/** Cache.java */
public interface Cache {
 Object get(Object key) throws CacheException;
 void put(Object key, Object value) throws CacheException;
 void remove(Object key) throws CacheException;
 void clear() throws CacheException;
 void destroy() throws CacheException;}

/** OSCache.java */
public class OSCache implements Cache {
 private GeneralCacheAdministrator cache = null;

 public OSCache(Properties prop) {
  cache = new GeneralCacheAdministrator(prop);
 }

 public void setCacheCapacity(int cacheCapacity) {
  cache.setCacheCapacity(cacheCapacity);
 }

 public Object get(Object key) throws CacheException {
  try {
   return cache.getFromCache(String.valueOf(key));
  } catch (NeedsRefreshException e) {
   cache.cancelUpdate(String.valueOf(key));
   return null;
  }
 }

 public void put(Object key, Object value) throws CacheException {
  cache.putInCache(String.valueOf(key), value);
 }

 public void remove(Object key) throws CacheException {
  cache.flushEntry(String.valueOf(key));
 }

 public void clear() throws CacheException {
  cache.flushAll();
 }

 public void destroy() throws CacheException {
  cache.destroy();
 }
}

/** CacheManager.java */
public class CacheManager { //$SUP-USP$

 private static Map cacheMap = new HashMap();
 private static Config config = ConfigManager.getConfig();

 private CacheManager() {
 }

 public static Cache getCache(Class clazz) {
  return getCache(clazz.getName());
 }

 public static Cache getCache(String cacheId) {
  Cache cache = null;

  cache = (Cache) cacheMap.get(cacheId);

  if (cache == null) {
   cache = new OSCache(config.getProperties());
   cacheMap.put(cacheId, cache);
  }

  return cache;
 }
}<转>

 

分享到:
评论

相关推荐

    oscache-2.1.jar

    oscache-2.1.jar oscache-2.1.jar

    OSCache配置说明文档

    OSCache由OpenSymphony设计,它是一种开创性的JSP定制标记应用,提供了在现有JSP页面之内实现快速内存缓冲的功能。OSCache是一个广泛采用的高性能的J2EE缓存框架,OSCache能用于任何Java应用程序的普通的缓存解决...

    oscache(JSP定制标记应用)

    javaweb做页面缓存常用,OSCache是一个工业级的J2EE缓存实现。OSCache不但能缓存java对象,还可以缓存页面,http请求和二进制内容,例如pdf文件等。通过应用OSCache,我们不但可以实现通常的Cache功能,还能够改善...

    用OSCache进行缓存对象

    1、OSCache是什么? 2、OSCache的特点 3、有关“用OSCache进行缓存对象”的研究

    oscache文档

    OSCache标记库由OpenSymphony设计,它是一种开创性的JSP定制标记应用,提供了在现有JSP页面之内实现快速内存缓冲的功能。OSCache是个一个广泛采用的高性能的J2EE缓存框架,OSCache能用于任何Java应用程序的普通的...

    oscache缓存技术入门实例

    oscache缓存技术入门实例

    oscache的例子

    OSCache标记库由OpenSymphony设计,它是一种开创性的缓存方案,它提供了在现有JSP页面之内实现内存缓存的功能。OSCache是个一个被广泛采用的高性能的J2EE缓存框架,OSCache还能应用于任何Java应用程序的普通的缓存...

    OSCache学习例子 实例

    OSCache学习例子 实例 很好的与j2ee结合

    Oscache使用手册

    Cache是一种用于提高系统响应速度、改善系统运行性能的技术。尤其是在Web应用中,通过缓存页面的...OSCache是个一个被广泛采用的高性能的J2EE缓存框架,OSCache还能应用于任何Java应用程序的普通的缓存解决方案。。。。

    Oscache框架的搭建步骤

    使用oscache进行缓存,大大提高web系统运行效率

    oscache jar包下载

    oscache-2.4.1.jar资源包,用于java缓存、jsp页面缓存

    OSCache需要的包

    oscache.tld,oscahe.properties,oscache-2.1.jar,commons

    oscache 使用介紹

    OSCache是OpenSymphony这个开源项目众多Projects中的一个。他是一个高效的J2EE缓存框架,能够很好的解决动态网站速度的问题。

    oscache-java缓存框架

    oscache-java缓存框架插件和安装教程,使用教程一步到位

    oscache详细配置文档

    本文叙述了如何使用oscanche,最后的配置需要在oscache.properties中完成

    oscache-2.2jar包

    oscache-2.2jar包

    oscache说明

    oscache的简单介绍

    oscache的使用

    oscache的使用

Global site tag (gtag.js) - Google Analytics