從零搭建Spring Boot腳手架(6):整合Redis作為快取
阿新 • • 發佈:2020-08-19
![](https://img2020.cnblogs.com/other/1739473/202008/1739473-20200819095515507-188579634.png)
## 1. 前言
[上一文](https://mp.weixin.qq.com/s/9uVsi9yfE0QheEKCUyGNPA)我們整合了**Mybatis Plus**,今天我們會把快取也整合進來。快取是一個系統應用必備的一種功能,除了在減輕資料庫的壓力之外。還在儲存一些短時效的資料場景中發揮著重大作用,比如儲存使用者**Token**、簡訊驗證碼等等,目前快取的選型還是比較多的,**EHCACHE**、**HAZELCAST**、**CAFFEINE**、**COUCHBASE**以及本文要整合的**REDIS**。接下來我們將會在**kono**腳手架專案中整合**Spring Cache**以及**Redis**。
> Gitee: https://gitee.com/felord/kono day05 分支
> GitHub: https://github.com/NotFound403/kono day05 分支
## 2. 整合目標
使專案具有快取功能,同時將預設的**JDK**序列化修改為**Jackson**序列化以儲存一些物件,同時實現一些特定的個性化的快取空間以滿足不同場景下的不同快取**TTL**時間需求。
## 3. 依賴整合
目前只需要引入下面的依賴即可:
```xml
```
預設情況下**spring-data-redis**使用高效能的**lettuce**客戶端實現,當然你可以替換為老舊的**jedis**。
## 4. 快取及Redis配置
快取以及**Redis**相關的配置項分別為`spring.cache`和`spring.redis`開頭的配置,這裡比較簡單的配置為:
```yaml
spring:
redis:
host: localhost
port: 6379
cache:
# type: REDIS
redis:
# 全域性過期時間
time-to-live: 120
```
## 5. RedisTemplate個性化
預設情況下會有兩個模板類被注入**Spring IoC**供我們使用,需要個性化配置來滿足實際的開發。
一個是`Redis