無(wú)論是什么技術(shù)在更新迭代之后,都會(huì)產(chǎn)生一些配置兼容等問(wèn)題。今天,我們來(lái)聊一聊Springboot在不同的版本下的相關(guān)redis配置問(wèn)題,有興趣的小伙伴們可以一起來(lái)看看下面的文章吧。
今天在springboot中使用數(shù)據(jù)庫(kù),springboot版本為2.0.2.RELEASE,通過(guò)pom引入jar包,配置文件application.properties中的redis配置文件報(bào)錯(cuò),提示例如deprecated configuration property 'spring.redis.pool.max-active',猜想應(yīng)該是版本不對(duì),發(fā)現(xiàn)springboot在1.4前后集成redis發(fā)生了一些變化。下面截圖看下。
一、不同版本RedisProperties的區(qū)別
這是springboot版本為1.3.2RELEASE中的RedisProperties配置文件類(lèi),從圖片中可以看得出來(lái)該本的redis配置文件屬性有兩個(gè)內(nèi)部靜態(tài)類(lèi)分別是Pool和Sentinel,七個(gè)屬性變量。例如我們想在配置文件中設(shè)置redis數(shù)據(jù)庫(kù)host地址,則可以這樣寫(xiě)
spring.redis.host=localhost host為屬性,配置連接池的最大連接數(shù) spring.redis.pool.max-active=8
這個(gè)是redis在application.properties中springboot低版本的配置
# REDIS (RedisProperties) # Redis數(shù)據(jù)庫(kù)索引(默認(rèn)為0) spring.redis.database=0 # Redis服務(wù)器地址 spring.redis.host=localhost # Redis服務(wù)器連接端口 spring.redis.port=6379 # Redis服務(wù)器連接密碼(默認(rèn)為空) spring.redis.password= # 連接池最大連接數(shù)(使用負(fù)值表示沒(méi)有限制) spring.redis.pool.max-active=8 # 連接池最大阻塞等待時(shí)間(使用負(fù)值表示沒(méi)有限制) spring.redis.pool.max-wait=-1 # 連接池中的最大空閑連接 spring.redis.pool.max-idle=8 # 連接池中的最小空閑連接 spring.redis.pool.min-idle=0 # 連接超時(shí)時(shí)間(毫秒) spring.redis.timeout=0
下圖則是springboot版本為2.0.2RELEASE中的RedisProperties配置文件類(lèi),從圖中可知pool屬性則被封裝到了內(nèi)部靜態(tài)類(lèi)Jedis和Lettuce中去了,這時(shí)我們要是配置連接池的最大連接數(shù),前綴還是spring.redis,有兩種途徑
spring.redis.jedis.pool.max-active=8 或者 spring.redis.lettuce.pool.max-active=8
這個(gè)是redis在application.properties中springboot高版本的配置
# REDIS (RedisProperties) # Redis數(shù)據(jù)庫(kù)索引(默認(rèn)為0) spring.redis.database=0 # Redis服務(wù)器地址 spring.redis.host=localhost # Redis服務(wù)器連接端口 spring.redis.port=6379 # Redis服務(wù)器連接密碼(默認(rèn)為空) spring.redis.password= # 連接池最大連接數(shù)(使用負(fù)值表示沒(méi)有限制) spring.redis.jedis.pool.max-active=8 # 連接池最大阻塞等待時(shí)間(使用負(fù)值表示沒(méi)有限制) spring.redis.jedis.pool.max-wait=-1 # 連接池中的最大空閑連接 spring.redis.jedis.pool.max-idle=8 # 連接池中的最小空閑連接 spring.redis.jedis.pool.min-idle=0 # 連接超時(shí)時(shí)間(毫秒) spring.redis.timeout=0
二、maven下pom中的坐標(biāo)配置
springboot版本1.4以下
<!--引入 spring-boot-starter-redis(1.4版本前)-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-redis</artifactId>
<version>1.3.2.RELEASE</version>
</dependency>
springboot版本1.4以上
<!--引入 spring-boot-starter-data-redis(1.4版本后)多了個(gè)data加個(gè)紅和粗吧-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
到此這篇關(guān)于解析springboot中不同版本下的redis配置問(wèn)題的文章就介紹到這了,更多相關(guān)springboot redis的內(nèi)容,請(qǐng)搜索W3Cschool以前的文章或繼續(xù)瀏覽下面的相關(guān)文章。同時(shí)也希望大家可以多多支持我們,大家的支持,就是對(duì)我們最大的認(rèn)可!