当前位置: 首页 > news >正文

成都保障房中心官方网站四川招标投标网

成都保障房中心官方网站,四川招标投标网,源码分享,app软件开发公司推荐问题描述 最近遇到一个 Redis 多数据源切换问题#xff0c;不过我这个没有那么动态切换需求#xff0c;所以就写了一种比较硬编码的方式来做『切换』 其实大概的场景是这样的#xff1a;不同的开发环境调用 db0、生产环境调用 db1#xff0c;但是因为业务原因#xff0c…问题描述 最近遇到一个 Redis 多数据源切换问题不过我这个没有那么动态切换需求所以就写了一种比较硬编码的方式来做『切换』 其实大概的场景是这样的不同的开发环境调用 db0、生产环境调用 db1但是因为业务原因当中有一部分的业务需要共享数据中心数据所以想把 db15 当作他们的共享数据库。 原因分析 思路很简单只要生产 2 个 RedisTemplate 即可 调用默认的 db RedisTemplate调用共享的 db RedisTemplate 解决方案 import com.fasterxml.jackson.annotation.JsonAutoDetect; import com.fasterxml.jackson.annotation.PropertyAccessor; import com.fasterxml.jackson.databind.ObjectMapper; import lombok.extern.slf4j.Slf4j; import org.apache.commons.pool2.impl.GenericObjectPoolConfig; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.data.redis.connection.RedisStandaloneConfiguration; import org.springframework.data.redis.connection.jedis.JedisClientConfiguration; import org.springframework.data.redis.connection.jedis.JedisConnectionFactory; import org.springframework.data.redis.connection.lettuce.LettuceClientConfiguration; import org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory; import org.springframework.data.redis.connection.lettuce.LettucePoolingClientConfiguration; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.data.redis.serializer.GenericToStringSerializer; import org.springframework.data.redis.serializer.Jackson2JsonRedisSerializer; import org.springframework.data.redis.serializer.StringRedisSerializer; import javax.annotation.Resource; import java.time.Duration;/*** author Lux Sun* date 2020/5/9*/ Slf4j Configuration public class RedisConfig {Resourceprivate JedisConnectionFactory jedisConnectionFactory;Beanpublic RedisTemplateString, Object comnRedisObjectTemplate(Value(${spring.redis.host}) String host,Value(${spring.redis.port}) int port) {RedisStandaloneConfiguration redisConfig new RedisStandaloneConfiguration();redisConfig.setHostName(host);redisConfig.setPort(port);// 指定 database 15redisConfig.setDatabase(15);GenericObjectPoolConfig config new GenericObjectPoolConfig();JedisClientConfiguration clientConfiguration JedisClientConfiguration.builder().usePooling().build();JedisConnectionFactory jedisConnectionFactory new JedisConnectionFactory(redisConfig, clientConfiguration);RedisTemplateString, Object template new RedisTemplate();template.setConnectionFactory(jedisConnectionFactory);Jackson2JsonRedisSerializerObject serializer new Jackson2JsonRedisSerializer(Object.class);ObjectMapper om new ObjectMapper();om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);om.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);serializer.setObjectMapper(om);StringRedisSerializer stringRedisSerializer new StringRedisSerializer();// key采用String的序列化方式template.setKeySerializer(stringRedisSerializer);// hash的key也采用String的序列化方式template.setHashKeySerializer(stringRedisSerializer);// value序列化方式采用jacksontemplate.setValueSerializer(serializer);// hash的value序列化方式采用jacksontemplate.setHashValueSerializer(serializer);template.afterPropertiesSet();return template;}Beanpublic RedisTemplateString, Object redisObjectTemplate() {RedisTemplateString, Object template new RedisTemplate();template.setConnectionFactory(jedisConnectionFactory);Jackson2JsonRedisSerializerObject serializer new Jackson2JsonRedisSerializer(Object.class);ObjectMapper om new ObjectMapper();om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);om.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);serializer.setObjectMapper(om);StringRedisSerializer stringRedisSerializer new StringRedisSerializer();// key采用String的序列化方式template.setKeySerializer(stringRedisSerializer);// hash的key也采用String的序列化方式template.setHashKeySerializer(stringRedisSerializer);// value序列化方式采用jacksontemplate.setValueSerializer(serializer);// hash的value序列化方式采用jacksontemplate.setHashValueSerializer(serializer);template.afterPropertiesSet();return template;} }
http://wiki.neutronadmin.com/news/177215/

相关文章:

  • 建站中企动力百度seo查询
  • 云羽网络做网站怎么样抖音网络营销推广方式
  • 网站内置多语言建设一个网站系统要多久
  • 织梦怎么关闭网站建设工程质量协会网站
  • 中国建设银行官企业网站wordpress 随机头像
  • 沭阳网站开发市场策划方案
  • wordpress 背景特效插件学好seo
  • 大连网站建设怎么样庆阳门户网
  • 网站上内容列表怎么做公司注册法人查询
  • 12380举报网站制度建设建设报名系统
  • dw 做网站图片之间的链接wordpress主题tint-k
  • 昆明建网站电话建设银行网银登录入口
  • 大的网站建设公司好承德网站建设流程
  • 平台网站建设价格一个空间安装多个网站
  • 网站建设课程实训报告菊子曰 wordpress
  • 烟台市住房和规划建设管理局网站如何自己开网址
  • 网站开发checklist模板上海网页制作与设计电话
  • 网站策划论坛网站维护提示代码
  • 佛山网站制作做多少钱营销策略是什么意思
  • 现代化专业群建设网站siren模板wordpress
  • 重庆集团公司网站建设创新创业网站建设
  • 免费软件下载网站哪个好学网站开发多久
  • 天津建站模板seo外包公司一般费用是多少
  • 怎么建设一个淘宝客网站全国造价信息网官网
  • 常州建设局官方网站农化网站建设
  • 美食网站建设书keep的营销策略分析
  • 鳌江哪里有做网站免费申请网站官网
  • 网站开发都用什么浏览器网站设计的创新点
  • 网站建设方案书 本案wordpress导航栏不见了
  • 网站开发的安全性主要考虑哪些php+mysql网站开发全程实例pdf