springBoot整合Redis緩存的方法:
1、引入緩存依賴
<dependency> ?????<groupid>org.springframework.boot</groupid> ?????<artifactid>spring-boot-starter-data-redis</artifactid> ?????<version>2.1.5.RELEASE</version></dependency>
2. 增加緩存配置
在application.properties文件中增加以下配置
##?Redis部分 #?Redis服務器地址 spring.redis.host=${redis.host} #?Redis服務器連接端口 spring.redis.port=${redis.port} #?Redis服務器連接密碼(默認為空) spring.redis.password=${redis.password} #?連接池最大連接數(使用負值表示沒有限制) spring.redis.jedis.pool.max-active=${redis.maxTotal} #?連接池最大阻塞等待時間(使用負值表示沒有限制) spring.redis.jedis.pool.max-wait=-1ms #?連接池中的最大空閑連接 spring.redis.jedis.pool.max-idle=${redis.maxIdle} #?連接池中的最小空閑連接 spring.redis.jedis.pool.min-idle=4 #?連接超時時間(毫秒) spring.redis.timeout=5000 ##?Cache部分 #緩存的名稱集合,多個采用逗號分割 spring.cache.cache-names= #緩存的類型,官方提供了很多,這里我們填寫redis spring.cache.type=redis #是否緩存null數據,默認是false spring.cache.redis.cache-null-values=false #redis中緩存超時的時間,默認60000ms spring.cache.redis.time-to-live=60000 #緩存數據key是否使用前綴,默認是true spring.cache.redis.use-key-prefix=true #緩存數據key的前綴,在上面的配置為true時有效, spring.cache.redis.key-prefix=
3. 增加開啟緩存注解EnableCaching
@EnableCaching public?class?WebApplication?{ ????public?static?void?main(String[]?args)?{ ????????SpringApplication.run(WebApplication.class,?args); ????} }
4. 增加緩存注解
@Cacheable
該注解作用是標識這個方法返回值將會被緩存;
需要注意?condition?和?unless?,它們都是條件判斷參數:
-
condition:在調用方法之前進行判斷,所以不能將方法的結果值作為判斷條件;
-
unless:在調用方法之后進行判斷,此時可以拿到方法放回值作為判斷條件。
所以依賴方法返回值作為是否進行緩存的操作必須使用?unless?參數,而不是?condition
@CachePut
將方法返回值更新當前緩存
@CacheEvict
將當前緩存過期(清空)
更多相關知識請關注redis入門教程欄目
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END