springboot 集成redis 本身比較簡單,網上教程也比較多,此處簡要記錄一下吧
1、引入maven 依賴(版本號根據springboot 的版本號確定)
如果springboot 父pom 版本號爲1.x ,此處redis 版本號爲2.x,則會有意想不到的問題,問題將會在另一篇文章中描述
<!-- redis -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
2、在application.properties中配置redis的信息
##單服務器
spring.redis.host=127.0.0.1
##單端口
spring.redis.port=6379
## 連接池最大連接數(使用負值表示沒有限制)
spring.redis.pool.max-active=300
## Redis數據庫索引(默認爲0)
spring.redis.database=0
## 連接池最大阻塞等待時間(使用負值表示沒有限制)
spring.redis.pool.max-wait=-1
## 連接池中的最大空閒連接
spring.redis.pool.max-idle=100
## 連接池中的最小空閒連接
spring.redis.pool.min-idle=20
## 連接超時時間(毫秒)
spring.redis.timeout=60000
#哨兵的配置列表
#spring.redis.sentinel.master=qsmaster
#spring.redis.sentinel.nodes=127.0.0.1:6389,127.0.0.1:6390
#哨兵模式和單機服務,只配置一個即可,具體根據實際情況配置
3、在項目中直接注入
@Autowired private StringRedisTemplate stringRedisTemplate;
或者
@Autowired private RedisTemplate redisTemplate;
然後調用相關api即可。
StringRedisTemplate 和RedisTemplate的區別在於,StringRedisTemplate把緩存的key和value 作爲字符串序列化處理,存入到redis中,若存儲對象,一般是把把對象轉爲json串,存入,取出時把json字符串在轉爲對象。
RedisTemplate則是把key和value 進行jdk的序列化,RedisTemplate適合對象存儲,把對象存入到redis中,在取出時,不需要做對象轉換