影音先锋AⅤ天堂资源站,13小箩利洗澡无码视频APP,午夜理论片日本中文在线,最近新免费韩国日本电影

萬(wàn)能百科  > 游戲數(shù)碼?  > 

JedisConnectionFactory如何獲取Redis

2022-02-23   

Spring對(duì)Redis的支持是通過Spring Data Redis實(shí)現(xiàn)的,JedisConnectionFactory為我們提供了Redis的一種Java客戶端Jedis。本文主要為大家介紹使用工廠類獲取Jedis的兩種方式,以及使用過程中存在的問題,希望能為大家提供一些思路。

工具/材料

IntelliJ IDEA

操作方法

  • 01

    首先我們需要編輯Spring的配置文件application.properties,添加Redis的相關(guān)配置,這些配置在代碼中需要注入,用來(lái)生成JedisConnectionFactory的Bean。

  • 02

    接下來(lái)我們寫一個(gè)配置類,該配置類上需要添加@Configuration注解,我們?cè)谶@個(gè)類中通過@Value注解注入application.properties配置文件中的部分需要的屬性,其中{}用于接收屬性值,在屬性名冒號(hào)后面的值是默認(rèn)值,若讀取不到該屬性則使用默認(rèn)值。我們?cè)谠擃愔袆?chuàng)建JedisConnectionFactory的Bean,在這個(gè)Bean中設(shè)置讀取到的屬性值。

  • 03

    接下來(lái)我們創(chuàng)建一個(gè)RedisServer的類,主要用于獲取Redis以及實(shí)現(xiàn)部分Redis操作的方法。在該類中我們可以使用@Autowired注解注入JedisConnectionFactory的Bean。下圖中獲取Redis客戶端Jedis的方法是我們推薦的方法,使用該方法我們既獲取到了Jedis實(shí)例又使用的連接池,將Jedis實(shí)例交由連接池管理,不用太擔(dān)心并發(fā)操作導(dǎo)致的Redis不可用的情況。最后再附上Jedis操作存儲(chǔ)和獲取數(shù)據(jù)的方法。

  • 04

    另外,我們還有再介紹一種并不推薦的寫法,如下圖所示。這種方法每次都創(chuàng)建一個(gè)新的Redis連接并且沒有關(guān)閉連接,在大量并發(fā)操作時(shí)會(huì)帶來(lái)性能上的開銷,由于對(duì)連接數(shù)沒有限制,可能會(huì)耗盡Redis的連接,導(dǎo)致Redis連接報(bào)錯(cuò)。

  • 05

    配置完成后我們來(lái)測(cè)試一下Jedis是否能正常使用,創(chuàng)建一個(gè)RedisController類,在該類中注入JedisServer,使用JedisServer提供的存儲(chǔ)和讀取方法,然后啟動(dòng)服務(wù)。

  • 06

    服務(wù)啟動(dòng)后我們?cè)趐ostman中進(jìn)行測(cè)試,首先調(diào)用setRedis請(qǐng)求將數(shù)據(jù)存入Redis中,然后再調(diào)用getRedis請(qǐng)求獲取數(shù)據(jù),如下圖所示。

  • 07

    JedisConnectionFactory在Spring Data Redis 2.0后就不再推薦上述這種配置方式了,當(dāng)我們的spring-boot-starter-parent版本設(shè)置為2.x時(shí),我們可以看到代碼中的設(shè)置已經(jīng)被廢棄了。

  • 08

    Spring Data Redis 2.0推薦使用Standalone、Sentinel、RedisCluster這三種模式的環(huán)境配置類,以便于更加靈活的適配更多的業(yè)務(wù)場(chǎng)景,我們一般自己測(cè)試Redis通常使用的都是單機(jī)版的,那么以單機(jī)版為例,JedisConnectionFactory的配置應(yīng)寫為如下的方式。

特別提示

本文只是介紹了一種Redis客戶端的使用方式,還是推薦大家使用spring-boot集成Redis做開發(fā),因?yàn)閟pring-boot開箱即用的特性可以大大減少開發(fā)工作量。

詞條內(nèi)容僅供參考,如果您需要解決具體問題
(尤其在法律、醫(yī)學(xué)等領(lǐng)域),建議您咨詢相關(guān)領(lǐng)域?qū)I(yè)人士。

標(biāo)簽

<蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <文本链> <文本链> <文本链> <文本链> <文本链> <文本链>