`
wangdf_jee
  • 浏览: 114287 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

OSCache 实例

 
阅读更多
//
package com.wdf.cache;

import java.util.Date;  

import com.opensymphony.oscache.base.NeedsRefreshException;  
import com.opensymphony.oscache.general.GeneralCacheAdministrator;  
 
public class BaseCache extends GeneralCacheAdministrator {  
    //过期时间(单位为秒);  
protected int refreshPeriod;  
    //关键字前缀字符;  
    protected String keyPrefix;  
      
    private static final long serialVersionUID = -4397192926052141162L;  
      
    public BaseCache(String keyPrefix,int refreshPeriod){  
        super();  
        this.keyPrefix = keyPrefix;  
        this.refreshPeriod = refreshPeriod;  
    }  
    //添加被缓存的对象;  
    public void put(String key,Object value){  
        this.putInCache(this.keyPrefix+"_"+key,value);  
    }  

    public void remove(String key){  
        this.flushEntry(this.keyPrefix+"_"+key);  
    }  
    //删除所有被缓存的对象;  
    public void removeAll(Date date){  
        this.flushAll(date);  
    }  
      
    public void removeAll(){  
        this.flushAll();  
    }  
    //获取被缓存的对象;  
    public Object get(String key) throws Exception{  
        try{  
            return this.getFromCache(this.keyPrefix+"_"+key,this.refreshPeriod);  
        } catch (NeedsRefreshException e) {  
            this.cancelUpdate(this.keyPrefix+"_"+key);  
            throw e;  
        }  
 
    }  
      
}   

//CacheManager
package com.wdf.cache;

 
public class CacheManager {  
      
    private static  NewsBaseCache  newsCache=new  NewsBaseCache ("asr",1800);  
 
      
    private static Object lock = new Object();  
      
    public static  NewsBaseCache  getInstance(){  
        if (newsCache == null){  
            synchronized( lock ){  
                if (newsCache == null){  
                newsCache = new  NewsBaseCache ("asr",1800);  
                }  
            }  
        } 
        return newsCache;  
    }  

}   
//news bean
package com.wdf.bean;

public class News {
    Integer ID;
    String value;
    public News(Integer ID,String value){
    this.ID=ID;
    this.value=value;
    }
   
public Integer getID() {
return ID;
}
public void setID(Integer iD) {
ID = iD;
}
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
   
   
   



}
//Test

package com.wdf.bean;

import com.wdf.cache.CacheManager;
import com.wdf.cache.NewsBaseCache;

public class Test {

/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
// TODO Auto-generated method stub
NewsBaseCache  baseCache= CacheManager.getInstance();
  News news=new News(123,"won");
  baseCache.put("123", news);
  System.out.println(baseCache.get("123").getValue());
}

}


分享到:
评论

相关推荐

    OSCache学习例子 实例

    3. **初始化OSCache**:在应用启动时初始化OSCache实例,通常在Servlet容器的初始化回调方法中进行。 4. **使用OSCache**:将需要缓存的对象放入OSCache,例如: ```java Object object = ...; Cache cache = ...

    OsCache实例

    OsCache 是一个高性能、轻量级的Java缓存框架,主要设计用于提高应用程序的数据访问速度,减少数据库的负载。在Java应用中,缓存是一种常用的技术手段,它能够存储经常访问但更新不频繁的数据,从而避免每次请求时都...

    oscache缓存技术

    压缩包中的代码示例可能包括了如何创建osCache实例、配置缓存、添加和检索缓存对象的步骤。通过学习这些示例,开发者可以更好地理解osCache的工作原理,并将其应用到实际项目中。 总结来说,osCache是一个强大的...

    OsCache缓存框架使用示例

    3. 创建缓存对象:在需要缓存数据的地方,创建OsCache实例并指定缓存名称。例如,可以创建一个名为`weatherCache`的缓存,用于存储天气信息。 4. 存储数据:当获取到新的天气信息时,将其存储到OsCache中,键为城市...

    基于OSCache的页面缓存(收藏)

    接下来,我们需要在代码中初始化OSCache实例,并调用其提供的API来管理缓存。例如,添加页面到缓存: ```java import com.opensymphony.oscache.base.Cache; Cache cache = CacheManager.getInstance().getCache(...

    OSCache

    3. **初始化缓存**: 在应用启动时初始化OSCache实例。 4. **数据缓存**: 对于需要缓存的数据,使用OSCache提供的API将其放入缓存,并关联一个唯一的键。 5. **数据获取**: 当需要数据时,首先尝试从缓存中查找,...

    oscache的使用实例和详解

    **osCache:高效缓存框架详解与实例应用** osCache是一款流行且强大的Java缓存框架,主要用于提高应用程序的性能和响应速度。它通过将经常访问的数据存储在内存中,避免了反复读取数据库或计算数据的过程,从而显著...

    OSCache简介

    3. **初始化OSCache**:在应用启动时初始化OSCache 实例。 4. **存取数据**:使用OSCache 提供的方法将数据放入缓存,并根据需要从缓存中取出数据。 5. **处理缓存失效**:根据配置的过期策略,OSCache 会自动处理...

    OSCache 资料

    3. **初始化**:在应用程序启动时初始化OSCache实例,可以使用OSCacheFactory类的getCache()方法。 4. **使用缓存**:在需要缓存数据的地方,使用OSCache提供的put()方法存入数据,get()方法取出数据。 5. **清理...

    oscache缓存技术入门实例

    osCache 是一个开源的、基于Java的缓存框架,它为Java应用程序提供了高效且可配置的内存缓存功能。在本文中,我们将深入探讨osCache的基本概念、工作原理以及如何在实际项目中进行配置和使用。 一、osCache基本概念...

    hibernate+oscache实现二级缓存实例

    本实例将介绍如何结合Hibernate和OSCache实现二级缓存,以优化应用程序的性能。 一级缓存是Hibernate内置的Session级别的缓存,它存储了在同一个Session内操作的对象,避免了频繁的数据库读写。然而,一级缓存仅...

    OSCache缓存技术(6)【实例】

    本篇文章将深入探讨OSCache的核心概念、配置、使用实例以及其在实际开发中的应用。 首先,OSCache是基于内存的缓存系统,它允许开发者将常用的数据存储在内存中,以便快速访问。这种技术对于处理高并发请求和大数据...

    oscache缓存配置

    除了静态配置文件外,osCache还支持动态编程配置,可以在代码中通过`CacheManager`实例创建和管理缓存。例如: ```java import net.sf.oscache.CacheManager; CacheManager.init("oscache.properties"); // 初始化...

    Oscache简单实例

    3. **声明缓存**:定义需要缓存的对象,可以通过`CacheManager`获取或创建缓存实例。 4. **缓存数据**:将数据放入缓存,例如`cache.put(key, value);` 5. **获取缓存**:根据键获取缓存数据,`Object value = cache...

    OSCache配置说明文档

    例如,使用`CacheManager.getInstance().getCache("myCache")`获取名为“myCache”的缓存实例,然后进行对象的存取操作。 6. 使用示例 此处可给出具体的代码示例,展示如何创建、更新、查询和移除缓存项,以及如何...

    oscache-java缓存框架

    - **API集成**:使用osCache提供的API进行缓存的增删改查操作,如`CacheManager.getInstance().getCache("myCache")`获取缓存实例。 4. **使用教程** - **创建缓存**:定义一个缓存,例如`Cache cache = ...

    oscache对象缓存

    例如,`CacheManager`类是oscache的核心,它负责创建、管理和销毁缓存实例。`Cache`接口则提供了添加、删除、获取和更新缓存项的方法。此外,oscache还支持事件监听机制,可以监听缓存项的添加、删除和更新事件,...

    oscache-2.1.1-full.zip_full_oscache_oscache 2_oscache2

    **应用实例** osCache 可用于Web应用程序,例如在Spring框架中集成,提高数据访问效率。也可以在企业级应用中,处理大数据量的缓存需求,减少数据库压力。结合集群功能,可以构建高可用、高性能的分布式缓存系统。 ...

    Oscache使用教程

    3. **缓存管理**:创建和获取缓存实例,然后添加、检索和移除数据。如: ```java Cache cache = cacheManager.getCache("myCache"); cache.put("key", "value"); String value = (String) cache.get("key"); ...

Global site tag (gtag.js) - Google Analytics