forked from fanpan26/LayIM_JavaClient-Deprecated
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathEHCacheUtil.java
More file actions
39 lines (30 loc) · 1.31 KB
/
EHCacheUtil.java
File metadata and controls
39 lines (30 loc) · 1.31 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
package util.cache;
import org.ehcache.Cache;
import org.ehcache.CacheManager;
import org.ehcache.config.builders.CacheConfigurationBuilder;
import org.ehcache.config.builders.CacheManagerBuilder;
import org.ehcache.config.builders.ResourcePoolsBuilder;
/**
* Created by pz on 16/11/24.
*/
public class EHCacheUtil {
public <K,V> CacheManager getCacheManager(Class<K> kClass,Class<V> vClass,String configureName){
CacheManager manager = CacheManagerBuilder.newCacheManagerBuilder()
.withCache(configureName,
CacheConfigurationBuilder.newCacheConfigurationBuilder(kClass, vClass, ResourcePoolsBuilder.heap(10)))
.build();
manager.init();
return manager;
}
public <K,V> Cache<K,V> getCache(Class<K> kClass,Class<V> vClass,String cacheName,String configureName,CacheManager manager) {
Cache<K, V> cache =
manager.getCache(configureName, kClass, vClass);
/*Cache<K, V> cache = manager.createCache(cacheName,
CacheConfigurationBuilder.newCacheConfigurationBuilder(kClass, vClass, ResourcePoolsBuilder.heap(10)).build());*/
return cache;
}
public void closeCache(CacheManager manager,String configureName){
manager.removeCache(configureName);
manager.close();
}
}