`

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缓存技术应用

    **一、OSCache简介与应用** Cache技术是提升系统响应速度和性能的关键手段,尤其在Web应用中,通过缓存页面的输出结果,能够显著提高系统性能。OSCache是由OpenSymphony开发的一种创新缓存解决方案,它允许在现有的...

    oscache的使用

    3. **OSCache简介**:介绍OSCache项目的背景、特点及其在J2EE框架中的应用。 4. **OSCache的主要特征**:详细介绍OSCache的核心功能,包括兼容性、缓存策略和灵活性。 5. **安装与配置OSCache**:指导如何在不同的...

    oscache文档

    #### 三、OSCache简介 **3.1 主要特征** - **广泛的Web服务器兼容性**:已通过兼容测试的Web服务器包括但不限于Orion Server、Macromedia JRun、BEA WebLogic、IBM WebSphere、Silverstream、Caucho Resin和Tomcat...

    OSCache缓存框架的简单用法

    OSCache简介** OSCache是由OpenSymphony开发的一个高性能、轻量级的缓存解决方案。它支持本地缓存和分布式缓存,可集成到多种应用服务器中,如Tomcat、Jetty等。OSCache的核心特性包括缓存对象的自动过期、内存...

    oscache 集群和数据同步

    一、osCache简介 osCache最初由JBOSS公司开发,后成为开源项目。它提供了一个基于内存的缓存解决方案,可以在多个应用服务器之间共享数据,以减少数据库的访问压力。osCache支持多种缓存策略,如定时刷新、手动刷新...

    应用OSCache提升J2EE系统运行性能

    #### OSCache简介 **OSCache**是一个开放源码项目,专门针对J2EE框架下的Web应用层缓存设计。它不仅能实现常规的缓存功能,还能增强系统的稳定性。本文将详细介绍如何利用OSCache来优化J2EE系统的性能,并探讨其在...

    oscache-2.3.jar

    一、oscache简介 oscache全称为OpenSymphony Cache,是一个完全开源的、基于JVM内存的缓存解决方案。它提供了全面的缓存管理功能,包括对象缓存、页面缓存以及对JSP标签的支持,能够有效减少数据库查询,提高应用...

    Oscache_入门

    #### 一、Oscache简介 Oscache是一种高效且功能丰富的缓存技术,主要用于改善Web应用的性能。通过缓存Web页面的输出结果,能够显著提升系统的响应速度和整体运行效率。Oscache由OpenSymphony设计开发,作为一个开源...

    Oscache攻略

    1. **Oscache简介** Oscache是OpenSymphony公司开发的一款高性能缓存框架,其设计目标是为Web应用程序提供快速的内存数据存储。通过将经常访问的数据存储在内存中,Oscache能够减少对数据库的访问,从而大大提高...

    在J2EE系统中应用OSCache知识.pdf

    OSCache简介 OSCache 2.0是目前的稳定版本,适用于多种JSP支持的Web服务器,如OrionServer、JRun、Weblogic、Websphere、Silverstream、Resin和Tomcat等。其主要特点包括: 1. **兼容性**:支持Servlet 2.3和JSP ...

    OSCache入门教程

    #### 一、OSCache简介与特点 OSCache是一个开源的缓存库,专门用于Java Web应用程序中的页面缓存。它能够有效地提高网站性能,减轻服务器负担,尤其适用于那些数据更新不频繁但访问量较大的场景。通过提供一系列JSP...

    OSCache使用文档

    ### OSCache简介 OSCache是一个高性能、易于使用的缓存组件,主要用于Web应用程序中数据的缓存管理。它可以极大地提高Web应用的性能,通过减少对数据库或其他后端系统的访问频率来降低服务器负载。OSCache支持多种...

    OSCache学习心得

    #### 一、OSCache简介 OSCache是OpenSymphony组织开发的一款轻量级的Java缓存组件,它提供了页面缓存、片段缓存等功能,能够有效提高Web应用的性能。通过在服务器端缓存页面或页面片段,可以显著减少数据库访问次数...

    OSCACHE配置URL实现页面缓存的Fliter(修改配置无需重启)

    1. **OSCache简介**:OSCache是一个强大的内存对象缓存系统,它支持多种缓存策略,如LRU(Least Recently Used)和FIFO(First In First Out),并提供序列化、反序列化以及缓存同步等功能。 2. **缓存过滤器**:在...

    Oscache简单实例

    **Oscache简介** Oscache是一款开源的Java缓存框架,它提供了高效、轻量级的内存缓存解决方案,适用于提升应用性能,减少数据库访问压力。由OpenSymphony团队开发,广泛应用于需要缓存数据的Java Web项目中。通过在...

    CacheDomecache案例myeclipse10.0开发

    1. **osCache简介**:osCache是一个广泛使用的Java缓存解决方案,它能够帮助开发者在应用程序中快速存储和检索数据,减少对数据库的频繁访问,从而提高系统的响应速度。osCache支持内存缓存、持久化缓存以及分布式...

Global site tag (gtag.js) - Google Analytics