序
本文主要研究一下jetcache的CacheManager
CacheManager
jetcache-core/src/main/java/com/alicp/jetcache/CacheManager.java
public interface CacheManager {
<K, V> Cache<K, V> getCache(String area, String cacheName);
void putCache(String area, String cacheName, Cache cache);
BroadcastManager getBroadcastManager(String area);
void putBroadcastManager(String area, BroadcastManager broadcastManager);
default <K, V> Cache<K, V> getCache(String cacheName) {
return getCache(CacheConsts.DEFAULT_AREA, cacheName);
}
default void putCache(String cacheName, Cache cache){
putCache(CacheConsts.DEFAULT_AREA, cacheName, cache);
}
/**
* create or get Cache instance.
* @see QuickConfig#newBuilder(String)
*/
<K, V> Cache<K, V> getOrCreateCache(QuickConfig config);
default void putBroadcastManager(BroadcastManager broadcastManager){
putBroadcastManager(CacheConsts.DEFAULT_AREA, broadcastManager);
}
}
CacheManager定义了getCache、putCache、getBroadcastManager、putBroadcastManager、getOrCreateCache方法,并提供了aera为default的默认getCache、putCache、putBroadcastManager方法
SimpleCacheManager
jetcache-core/src/main/java/com/alicp/jetcache/SimpleCacheManager.java
public class SimpleCacheManager implements CacheManager, AutoCloseable {
private static final boolean DEFAULT_CACHE_NULL_VALUE = false;
private static final Logger logger = LoggerFactory.getLogger(SimpleCacheManager.class);
// area -> cacheName -> Cache
private final ConcurrentHashMap<St

最低0.47元/天 解锁文章
1154

被折叠的 条评论
为什么被折叠?



