SpringBoot加入Guava Cache實(shí)現(xiàn)本地緩存代碼實(shí)例
這篇文章主要介紹了SpringBoot加入Guava Cache實(shí)現(xiàn)本地緩存代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
在pom.xml中加入guava依賴
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>18.0</version>
</dependency>
創(chuàng)建一個CacheService,方便調(diào)用
public interface CacheService {
//存
void setCommonCache(String key,Object value);
//取
Object getCommonCache(String key);
}
其實(shí)現(xiàn)類
import com.google.common.cache.Cache;
import com.google.common.cache.CacheBuilder;
import com.wu.service.CacheService;
import org.springframework.stereotype.Service;
import javax.annotation.PostConstruct;
import java.util.concurrent.TimeUnit;
@Service
public class CacheServiceImpl implements CacheService {
private Cache<String,Object> commonCache=null;
@PostConstruct//代理此bean時會首先執(zhí)行該初始化方法
public void init(){
commonCache= CacheBuilder.newBuilder()
//設(shè)置緩存容器的初始化容量為10(可以存10個鍵值對)
.initialCapacity(10)
//最大緩存容量是100,超過100后會安裝LRU策略-最近最少使用,具體百度-移除緩存項(xiàng)
.maximumSize(100)
//設(shè)置寫入緩存后1分鐘后過期
.expireAfterWrite(60, TimeUnit.SECONDS).build();
}
@Override
public void setCommonCache(String key, Object value) {
commonCache.put(key,value);
}
@Override
public Object getCommonCache(String key) {
return commonCache.getIfPresent(key);
}
}
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
java對于目錄下文件的單詞查找操作代碼實(shí)現(xiàn)
這篇文章主要介紹了java對于目錄下文件的單詞查找操作代碼實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2019-11-11
淺談Java開發(fā)架構(gòu)之領(lǐng)域驅(qū)動設(shè)計DDD落地
DDD(Domain-Driven Design 領(lǐng)域驅(qū)動設(shè)計)是由Eric Evans最先提出,目的是對軟件所涉及到的領(lǐng)域進(jìn)行建模,以應(yīng)對系統(tǒng)規(guī)模過大時引起的軟件復(fù)雜性的問題2021-06-06
java利用數(shù)組隨機(jī)抽取幸運(yùn)觀眾
這篇文章主要為大家詳細(xì)介紹了java利用數(shù)組隨機(jī)抽取幸運(yùn)觀眾,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-05-05
Intellij IDEA中如何查看maven項(xiàng)目中所有jar包的依賴關(guān)系圖
這篇文章主要介紹了Intellij IDEA中如何查看maven項(xiàng)目中所有jar包的依賴關(guān)系圖,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-05-05
SpringBoot創(chuàng)建自定義starter詳解
這篇文章主要介紹了SpringBoot創(chuàng)建自定義starter詳解,Starter是Spring Boot中的一個非常重要的概念,Starter相當(dāng)于模塊,它能將模塊所需的依賴整合起來并對模塊內(nèi)的Bean根據(jù)環(huán)境(條件)進(jìn)行自動配置,需要的朋友可以參考下2024-01-01
關(guān)于使用MyBatis簡化JDBC開發(fā)和解決SQL語句警告的問題
這篇文章主要介紹了關(guān)于使用MyBatis簡化JDBC開發(fā)和解決SQL語句警告的問題,如果idea和數(shù)據(jù)庫沒有建立鏈接,idea不識別表的信息,就會出現(xiàn)SQL語句的警告,需要的朋友可以參考下2023-05-05
Eclipse中Properties和yml配置文件注釋亂碼的解決
這篇文章主要介紹了Eclipse中Properties和yml配置文件注釋亂碼的解決,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-10-10

