自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Spring Boot集成Redis實戰(zhàn)操作

開發(fā) 后端 其他數(shù)據(jù)庫 Redis
最近在使用Spring Boot,發(fā)現(xiàn)其功能真是強大,可以快速的集成很多的組件功能,非常方便。

最近在使用Spring Boot,發(fā)現(xiàn)其功能真是強大,可以快速的集成很多的組件功能,非常方便:

今天就來介紹下,如何集成Redis。

定義

Redis 是一個高性能的key-value數(shù)據(jù)庫。它支持存儲的value類型很多,包括string(字符串)、list(鏈表)、set(集合)、zset(sorted set –有序集合)和hash(哈希類型)。

以下是Redis的一些優(yōu)點。

異常快 - Redis非??欤棵肟蓤?zhí)行大約110000次的設(shè)置(SET)操作,每秒大約可執(zhí)行81000次的讀取/獲取(GET)操作。

支持豐富的數(shù)據(jù)類型 - Redis支持開發(fā)人員常用的大多數(shù)數(shù)據(jù)類型,例如列表,集合,排序集和散列等等。這使得Redis很容易被用來解決各種問題,因為我們知道哪些問題可以更好使用地哪些數(shù)據(jù)類型來處理解決。

操作具有原子性 - 所有Redis操作都是原子操作,這確保如果兩個客戶端并發(fā)訪問,Redis服務(wù)器能接收更新的值。

多實用工具 - Redis是一個多實用工具,可用于多種用例,如:緩存,消息隊列(Redis本地支持發(fā)布/訂閱),應(yīng)用程序中的任何短期數(shù)據(jù),例如,web應(yīng)用程序中的會話,網(wǎng)頁***計數(shù)等。

如何搭建?

一.加入Redis相關(guān)依賴

二、application.properties中加入redis相關(guān)配置

在@Configuration或者集成了這個注解的注解標(biāo)識的類中聲明一個Redis的bean,本例是在入口類上聲明的Bean:

在Controller里注入StringRedisTemplate:

啟動瀏覽器訪問:

以上是手動進行redis的操作,那如何進行自動的的緩存操作呢?

在啟動類中添加注解

@EnableCaching會為每個bean中被 @Cacheable, @CachePut and @CacheEvict修飾的public方法進行緩存操作。

緩存的用法

這個方法在userId相同形同的情況下,***次調(diào)用的時候會執(zhí)行方法,以后每次在調(diào)用的時候會讀取緩存中的數(shù)據(jù)。

緩存的注解介紹:

@Cacheable

這個注解,會每次先檢查是否執(zhí)行過這個方法,在從緩存數(shù)據(jù)庫中查看key是否相等,如果找到了,從緩存中讀取,沒有匹配的那么執(zhí)行該方法,將結(jié)果緩存。

緩存都是通過key-value進行儲存的,value或cacheNames必須指定(value是cacheNames的別名),指定多個value用(value = {"value1", "value2"})如果沒有指定key,spring會提供一個默認(rèn)的KeyGenerator,這個KeyGenerator根據(jù)參數(shù)生成key,如果方法沒有參數(shù)返回KeyGenerator.EMPTY,如果有一個參數(shù)返回這個實例,如果有多個參數(shù)返回包含這些參數(shù)的SimpleKey??梢酝ㄟ^繼承CachingConfigurerSupport自己指定KeyGenerator,類上加@Configuration注解。也可以像上面那樣自己指定key,需要了解SPEL表達式。

多線程的情況下,可能同時會有多個線程同時進入一個沒被緩存過的方法,這樣會導(dǎo)致多個線程都會執(zhí)行一遍方法,sync="true"會將***次計算返回值的這個方法lock,計算完成后將結(jié)果緩存

備注:Redis最為常用的數(shù)據(jù)類型主要有以下:

  •  String
  •  Hash
  •  List
  •  Set
  •  Sorted set
  •  pub/sub
  •  Transactions

 

最近一直在使用Spring Boot,想一起學(xué)習(xí)的關(guān)注我吧! 

責(zé)任編輯:龐桂玉 來源: 今日頭條
相關(guān)推薦

2020-07-14 11:00:12

Spring BootRedisJava

2020-09-02 17:28:26

Spring Boot Redis集成

2017-04-17 10:35:40

Spring BooRedis 操作

2024-01-30 08:01:15

RabbitMQ業(yè)務(wù)邏輯應(yīng)用場景

2020-04-23 15:59:04

SpringKafka集群

2025-04-03 07:56:08

電子簽名合同系統(tǒng)Spring

2023-01-10 07:52:15

2021-05-18 07:30:36

開發(fā)Spring Boot日志

2025-01-23 08:53:15

2019-12-03 11:00:08

spring bootspring-kafkJava

2021-01-05 05:36:39

設(shè)計Spring Boot填充

2021-12-28 11:13:05

安全認(rèn)證 Spring Boot

2024-01-16 08:17:29

Mybatis驗證業(yè)務(wù)

2025-04-09 00:55:00

List類型Redis

2025-01-15 08:19:12

SpringBootRedis開源

2022-07-11 09:00:37

依賴配置文件Mybati

2024-08-05 08:45:35

SpringKafkaSCRAM

2025-02-22 08:00:00

AgentSpringBootJava

2024-10-06 08:35:44

點贊
收藏

51CTO技術(shù)棧公眾號