简单Ehcahe封装详解编程语言
2023-06-13 09:20:29 时间
public synchronized static void init() {
System.setProperty("net.sf.ehcache.enableShutdownHook", "true");
URL url = EhCacheUtil.class.getResource("/ehcache.xml");
manager = new CacheManager(url);
public synchronized static void stop() {
if (manager != null) {
manager.shutdown();
manager = null;
private synchronized static Cache _GetCache(String cache_name, boolean autoCreate) {
Cache cache = manager.getCache(cache_name);
if (cache == null autoCreate) {
manager.addCache(cache_name);
cache = manager.getCache(cache_name);
return cache;
/**
* 获取缓存中的数据
* @param name
* @param key
* @return
public synchronized static Object get(String name, Serializable key) {
return get(Object.class, name, key);
/**
* 获取缓存中的数据
* @param T
* @param resultClass
* @param name
* @param key
* @return
@SuppressWarnings("unchecked")
public synchronized static T T get(Class T resultClass, String name, Serializable key) {
if (name != null key != null) {
Cache cache = _GetCache(name, true);
Element element = cache.get(key);
if (element != null) {
T value = (T) element.getObjectValue();
cache.flush();
return value;
return null;
/**
* 写入缓存
* @param name
* @param key
* @param value
public synchronized static void put(String name, Object key, Object value) {
put(name,(Serializable)key,(Serializable)value);
/**
* 写入缓存
* @param name
* @param key
* @param value
public synchronized static void put(String name, Serializable key, Serializable value) {
if (name != null key != null value != null) {
Element element = new Element(key, value);
Cache cache = _GetCache(name, true);
cache.put(element);
cache.flush();
/**
* 清除缓冲中的某个数据
* @param name
* @param key
public synchronized static void remove(String name, Serializable key) {
if (name != null key != null) {
_GetCache(name, true).remove(key);
public synchronized static void clear(String name) {
_GetCache(name, true).removeAll();
原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/10662.html
cjavaxml相关文章
- highcharts移动端使用-支持vue-支持横向滚动-代码封装
- vue封装使用公共组件_vue组件封装思路
- struts2(三)之表单参数自动封装与参数类型自动转换详解编程语言
- python对MySqldb模块的简单封装代码详解编程语言
- java 封装的基类Springjdbc可以通用详解编程语言
- java 封装返回json数据详解编程语言
- C++三大特性之封装详解编程语言
- JavaBean和Map转换封装类详解编程语言
- python之面向对象之封装详解编程语言
- 对pymysql的简单封装详解编程语言
- MySQL数据库封装类:让操作数据更加方便(mysql数据库封装类)
- dmysql自己封装的mysql库
- 自己的js工具Cookie封装
- JavaScript闭包在封装函数时的简单分析
- PHP访问MYSQL数据库封装类(附函数说明)
- JavaScript的继承的封装介绍