本文整理了Java中org.springframework.cache.guava.GuavaCacheManager.<init>()
方法的一些代码示例,展示了GuavaCacheManager.<init>()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。GuavaCacheManager.<init>()
方法的具体详情如下:
包路径:org.springframework.cache.guava.GuavaCacheManager
类名称:GuavaCacheManager
方法名:<init>
[英]Construct a dynamic GuavaCacheManager, lazily creating cache instances as they are being requested.
[中]构造一个动态GuavaCacheManager,在请求缓存实例时惰性地创建它们。
代码示例来源:origin: 527515025/springBoot
@Bean
public CacheManager getCacheManager() {
List<Person> personList = demoService.findAll();
//所有缓存的名字
List<String> cacheNames = new ArrayList();
GuavaCacheManager cacheManager = new GuavaCacheManager();
//GuavaCacheManager 的数据结构类似 Map<String,Map<Object,Object>> map =new HashMap<>();
//将数据放入缓存
personList.stream().forEach(person -> {
//用person 的id cacheName
String cacheName=person.getId().toString();
if(cacheManager.getCache(cacheName)==null){
//为每一个person 如果不存在,创建一个新的缓存对象
cacheNames.add(cacheName);
cacheManager.setCacheNames(cacheNames);
}
Cache cache = cacheManager.getCache(cacheName);
//缓存对象用person的id当作缓存的key 用person 当作缓存的value
cache.put(person.getId(),person);
System.out.println("为 ID 为"+cacheName+ "的person 数据做了缓存");
});
return cacheManager;
}
}
代码示例来源:origin: lianggzone/springboot-action
@Bean
public CacheManager cacheManager() {
GuavaCacheManager cacheManager = new GuavaCacheManager();
cacheManager.setCacheBuilder(
CacheBuilder.newBuilder().
expireAfterWrite(10, TimeUnit.SECONDS).
maximumSize(1000));
return cacheManager;
}
}
代码示例来源:origin: kaif-open/kaif
@Bean
public CacheManager rssHotArticlesCacheManager() {
CacheBuilder<Object, Object> cacheBuilder = CacheBuilder.newBuilder()
.expireAfterWrite(4, TimeUnit.HOURS)
.maximumSize(100);
GuavaCacheManager cacheManager = new GuavaCacheManager("rssHotArticles");
cacheManager.setCacheBuilder(cacheBuilder);
return cacheManager;
}
代码示例来源:origin: kaif-open/kaif
@Bean
public CacheManager articleCacheManager() {
CacheBuilder<Object, Object> cacheBuilder = CacheBuilder.newBuilder()
.expireAfterWrite(10, TimeUnit.MINUTES)
.maximumSize(2000);
GuavaCacheManager cacheManager = new GuavaCacheManager("Article");
cacheManager.setCacheBuilder(cacheBuilder);
return cacheManager;
}
代码示例来源:origin: kaif-open/kaif
@Bean
public CacheManager honorRollsCacheManager() {
CacheBuilder<Object, Object> cacheBuilder = CacheBuilder.newBuilder()
.expireAfterWrite(1, TimeUnit.HOURS)
.maximumSize(100);
GuavaCacheManager cacheManager = new GuavaCacheManager("listHonorRoll");
cacheManager.setCacheBuilder(cacheBuilder);
return cacheManager;
}
}
代码示例来源:origin: org.eclipse.hawkbit/hawkbit-repository-test
@Bean
TenantAwareCacheManager cacheManager() {
return new TenantAwareCacheManager(new GuavaCacheManager(), tenantAware());
}
/**
代码示例来源:origin: kaif-open/kaif
@Bean
public CacheManager zoneInfoCacheManager() {
CacheBuilder<Object, Object> cacheBuilder = CacheBuilder.newBuilder()
.expireAfterWrite(10, TimeUnit.MINUTES)
.maximumSize(2000);
GuavaCacheManager cacheManager = new GuavaCacheManager("ZoneInfo");
cacheManager.setCacheBuilder(cacheBuilder);
return cacheManager;
}
代码示例来源:origin: kaif-open/kaif
/**
* hot zones cache, refresh every one hour. no need to distribute if we have multiple web servers
*
* @see {@link io.kaif.model.article.ArticleDao#listHotZonesWithCache(int, java.time.Instant)}
*/
@Bean
public CacheManager listHotZonesCacheManager() {
CacheBuilder<Object, Object> cacheBuilder = CacheBuilder.newBuilder()
.expireAfterWrite(1, TimeUnit.HOURS)
.maximumSize(1000);
GuavaCacheManager cacheManager = new GuavaCacheManager("listHotZones");
cacheManager.setCacheBuilder(cacheBuilder);
return cacheManager;
}
代码示例来源:origin: kaif-open/kaif
/**
* administrators cache, refresh every one minutes. no need to distribute if we have multiple
* web servers (user just not see new administrators)
*/
@Bean
public CacheManager listAdministratorsCacheManager() {
CacheBuilder<Object, Object> cacheBuilder = CacheBuilder.newBuilder()
.expireAfterWrite(1, TimeUnit.MINUTES)
.maximumSize(1000);
GuavaCacheManager cacheManager = new GuavaCacheManager("listAdministrators");
cacheManager.setCacheBuilder(cacheBuilder);
return cacheManager;
}
代码示例来源:origin: kaif-open/kaif
/**
* short life client app user cache (the cache is Optional<ClientAppUser>), so this is not
* distribute-able
*
* @see {@link io.kaif.model.clientapp.ClientAppDao#findClientAppUserWithCache}
*/
@Bean
public CacheManager findClientAppUserCacheManager() {
CacheBuilder<Object, Object> cacheBuilder = CacheBuilder.newBuilder()
.expireAfterWrite(1, TimeUnit.MINUTES)
.maximumSize(1000);
GuavaCacheManager cacheManager = new GuavaCacheManager("findClientAppUser");
cacheManager.setCacheBuilder(cacheBuilder);
return cacheManager;
}
代码示例来源:origin: zalando-stups/fullstop
private static CacheManager buildCacheManager(final String spec) {
final GuavaCacheManager cacheManager = new GuavaCacheManager();
cacheManager.setCacheBuilderSpec(parse(spec));
return cacheManager;
}
代码示例来源:origin: zalando-stups/fullstop
private static CacheManager buildCacheManager(final String spec) {
final GuavaCacheManager cacheManager = new GuavaCacheManager();
cacheManager.setCacheBuilderSpec(parse(spec));
return cacheManager;
}
代码示例来源:origin: org.eclipse.hawkbit/hawkbit-autoconfigure
/**
* @return the direct cache manager to access without tenant aware
* check, cause in sometimes it's necessary to access the cache
* directly without having the current tenant, e.g. initial
* creation of tenant
*/
@Bean(name = "directCacheManager")
@ConditionalOnMissingBean(name = "directCacheManager")
public CacheManager directCacheManager() {
final GuavaCacheManager cacheManager = new GuavaCacheManager();
if (cacheProperties.getTtl() > 0) {
final CacheBuilder<Object, Object> cacheBuilder = CacheBuilder.newBuilder()
.expireAfterWrite(cacheProperties.getTtl(), cacheProperties.getTtlUnit());
cacheManager.setCacheBuilder(cacheBuilder);
}
return cacheManager;
}
代码示例来源:origin: eclipse/hono
/**
* Create a new cache provider based on Guava and Spring Cache.
*
* @param config The configuration to use as base for this cache.
* @return A new cache provider or {@code null} if no cache should be used.
*/
private static CacheProvider newGuavaCache(final RequestResponseClientConfigProperties config) {
final int minCacheSize = config.getResponseCacheMinSize();
final long maxCacheSize = config.getResponseCacheMaxSize();
if (maxCacheSize <= 0) {
return null;
}
final CacheBuilder<Object, Object> builder = CacheBuilder.newBuilder()
.concurrencyLevel(1)
.initialCapacity(minCacheSize)
.maximumSize(Math.max(minCacheSize, maxCacheSize));
final GuavaCacheManager manager = new GuavaCacheManager();
manager.setAllowNullValues(false);
manager.setCacheBuilder(builder);
return new SpringCacheProvider(manager);
}
代码示例来源:origin: org.eclipse.hono/hono-service-base
/**
* Create a new cache provider based on Guava and Spring Cache.
*
* @param config The configuration to use as base for this cache.
* @return A new cache provider or {@code null} if no cache should be used.
*/
private static CacheProvider newGuavaCache(final RequestResponseClientConfigProperties config) {
final int minCacheSize = config.getResponseCacheMinSize();
final long maxCacheSize = config.getResponseCacheMaxSize();
if (maxCacheSize <= 0) {
return null;
}
final CacheBuilder<Object, Object> builder = CacheBuilder.newBuilder()
.concurrencyLevel(1)
.initialCapacity(minCacheSize)
.maximumSize(Math.max(minCacheSize, maxCacheSize));
final GuavaCacheManager manager = new GuavaCacheManager();
manager.setAllowNullValues(false);
manager.setCacheBuilder(builder);
return new SpringCacheProvider(manager);
}
}
内容来源于网络,如有侵权,请联系作者删除!