springboot自帶的緩存@EnableCaching用法
springboot自帶的緩存@EnableCaching
一般使用springboot自帶緩存時,直接就在啟動類裡添加註解@EnableCaching 。
@EnableCaching她有兩個經常使用的方法
1.@Cacheable添加緩存
這裡的value 是該緩存的名稱,可以隨意寫,而key要嚴格按照查詢條件來寫,比如這裡是查詢條件id.
@Cacheable(value = "gathering",key = "#id") public Gathering findById(String id) { return gatheringDao.findById(id).get(); }
查詢數據庫已有的數據,第一次緩存沒有該數據,直接走數據庫,然後存入緩存
第二次查詢該數據,發現緩存中存在key已有的數據,直接走緩存不走數據庫
2.@CacheEvict 清理緩存
/** * CacheEvict 清理緩存 * 刪除 * @param id */ @CacheEvict(value = "gathering",key = "#id") public void deleteById(String id) { gatheringDao.deleteById(id); } /** * CacheEvict 清理緩存 * 修改 * @param gathering */ @CacheEvict(value = "gathering",key = "#gathering.id") public void update(Gathering gathering) { gatheringDao.save(gathering); }
Redis可以設置過期時間,springboot自帶的緩存不可以。
使用springboot自帶緩存步驟
1.在啟動類XXXApplication
添加註解@EnableCaching註解,表示要使用springboot的緩存
2.在service層需要使用緩存的方法
添加@Cacheable註解value-全局的key,key-表示某一條記錄的key,程序運行時會優先在緩存中根據value和key查找記錄,找不到才會執行下面查詢語句,執行查詢語句後返回的數據會存到緩存中。
3.修改和刪除數據時將緩存刪除
以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。
推薦閱讀:
- 使用SpringCache進行緩存數據庫查詢方式
- SpringBoot詳解整合Spring Cache實現Redis緩存流程
- SpringBoot詳解整合Redis緩存方法
- SpringBoot如何使用@Cacheable進行緩存與取值
- 為Java項目添加Redis緩存的方法