色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術文章
文章詳情頁

Spring boot如何快速的配置多個Redis數據源

瀏覽:12日期:2023-05-12 08:56:14

簡介

redis 多數據源主要的運用場景是在需要使用多個redis服務器或者使用多個redis庫,本文采用的是fastdep依賴集成框架,快速集成Redis多數據源并集成lettuce連接池,只需引入依賴后在yaml文件中配置多數據源連接信息即可。

源碼地址希望大家可以star支持一下,后續還會加入其它依賴的簡易整合。https://github.com/louislivi/fastdep

引入依賴

Maven

<dependency> <groupId>com.louislivi.fastdep</groupId> <artifactId>fastdep-redis</artifactId> <version>1.0.1</version></dependency>

Gradle

compile group: ’com.louislivi.fastdep’, name: ’fastdep-redis’, version: ’1.0.1’

配置文件

fastdep: redis: redis1: #連接名稱 database: 0 host: 192.168.12.88 port: 6379 lettuce: #下面為連接池的補充設置 shutdown-timeout: 100 # 關閉超時時間 pool: max-active: 18 # 連接池最大連接數(使用負值表示沒有限制) max-idle: 8 # 連接池中的最大空閑連接 max-wait: 30 # 連接池最大阻塞等待時間(使用負值表示沒有限制) min-idle: 0 # 連接池中的最小空閑連接 redis2: #連接名稱 database: 1 host: 192.168.12.88 port: 6379 lettuce: #下面為連接池的補充設置 shutdown-timeout: 100 # 關閉超時時間 pool: max-active: 18 # 連接池最大連接數(使用負值表示沒有限制) max-idle: 8 # 連接池中的最大空閑連接 max-wait: 30 # 連接池最大阻塞等待時間(使用負值表示沒有限制) min-idle: 0 # 連接池中的最小空閑連接

運用

@Autowiredprivate StringRedisTemplate redis1StringRedisTemplate;// 注入時 redis1 代表配置文件中的連接名稱 StringRedisTemplate 為固定注入redis對象類型,// 會自動根據注入的變量名進行匹配@Autowiredprivate StringRedisTemplate redis2StringRedisTemplate;@GetMapping('redis')public void redis() { System.out.println(redis1StringRedisTemplate.opsForValue().get('test')); System.out.println(redis2StringRedisTemplate.opsForValue().get('test'));}

擴展

有時候需要自定義redisTemplate序列化和增加一些額外的配置,這時候我們可以封裝一個redis工具類來實現

package com.louislivi.fastdep.test.utils;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.data.redis.core.RedisTemplate;import org.springframework.data.redis.core.StringRedisTemplate;import org.springframework.data.redis.serializer.StringRedisSerializer;import org.springframework.stereotype.Component;/** * RedisUtil * * @author : louislivi */@Componentpublic class RedisUtil { @Autowired private StringRedisTemplate redis1StringRedisTemplate; @Autowired private StringRedisTemplate redis2StringRedisTemplate; @Autowired private RedisTemplate redis2RedisTemplate; @Autowired private RedisTemplate redis1RedisTemplate; public RedisTemplate redisTemplate(String name) { RedisTemplate redisTemplate; switch (name) { case 'redis2':redisTemplate = redis2RedisTemplate;break; default:redisTemplate = redis1RedisTemplate;break; } StringRedisSerializer stringRedisSerializer = new StringRedisSerializer(); redisTemplate.setKeySerializer(stringRedisSerializer); redisTemplate.setValueSerializer(stringRedisSerializer); redisTemplate.setHashKeySerializer(stringRedisSerializer); redisTemplate.setHashValueSerializer(stringRedisSerializer); return redisTemplate; } public StringRedisTemplate stringRedisTemplate(String name) { StringRedisTemplate stringRedisTemplate; switch (name) { case 'redis2':stringRedisTemplate = redis2StringRedisTemplate;break; default:stringRedisTemplate = redis1StringRedisTemplate;break; } stringRedisTemplate.setEnableTransactionSupport(true); return stringRedisTemplate; }}

@Autowiredprivate RedisUtil redisUtil;@GetMapping('redis')public void redis() { System.out.println(redisUtil.redisTemplate('redis1').opsForValue().get('test')); System.out.println(redisUtil.stringRedisTemplate('redis2').opsForValue().get('test'));}

原理

使用ImportBeanDefinitionRegistrar BeanDefinitionBuilder.genericBeanDefinition動態注入Bean其實很簡單有興趣可以去看看源碼,這樣的依賴集成是不是簡單了很多呢?

希望大家能夠支持開源,給個小星星,后續還會繼續開發其他依賴的整合,甚至兼容其他框架使用。fastdep讓java整合依賴更簡單。在此也招募有志同道合的coder共同完善這個項目。

到此這篇關于Spring boot如何快速的配置多個Redis數據源的文章就介紹到這了,更多相關Spring boot多個Redis數據源內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Spring
相關文章:
主站蜘蛛池模板: 免费看的一级片 | 99久久精品免费观看区一 | 国产成人免费午夜性视频 | 精品欧美一区二区在线观看 | 欧美色网在线 | 精品国产免费一区二区三区五区 | 久久福利青草精品免费 | 久久精品国产精品亚洲 | 爱爱客影院在线影院gf发现 | 国产精品免费一级在线观看 | 老人毛片| 91一区二区在线观看精品 | 萌白酱白丝护士服喷水铁牛tv | 亚洲女视频 | 国产亚洲福利 | 免费伦费一区二区三区四区 | 午夜性刺激免费视频 | 美女黄色影院 | free性丰满白嫩白嫩的hd | 九九精彩视频在线观看视频 | 欧美性f| 加勒比色综合 | 99精品网| 三级视频在线播放线观看 | 怡红院在线a男人的天堂 | 国产精品女上位在线观看 | 欧美日韩国产在线人成dvd | 日韩三级一区 | 欧美一二三 | 日韩亚洲欧美综合一区二区三区 | 亚洲国产欧美目韩成人综合 | 美女一级免费毛片 | 久久精品视频免费 | 成人视视 | 国产亚洲视频在线播放大全 | 国产播放 | 亚洲欧美精品久久 | 久久一级视频 | 真正全免费视频a毛片 | 国内成人精品亚洲日本语音 | 亚洲三级在线视频 |