202209-20 spring-data-redis 动态切换数据源的方法 最近遇到了一个麻烦的需求,我们需要一个微服务应用同时访问两个不同的Redis集群。一般我们不会这么使用Redis,但是这两个Redis本来是不同业务集群,现在需要一个微服务同时访问。其实我们在实际业务开发的时候,可能还会遇到类似的场景。例如Redis读写分离,这个也是spring-data-redis没有提供的功能,底层连接池例如Lettuce或者Jedis都提供了获取只读连接的API,但是缺陷有两个:上层spring-data-redis并没... 继续阅读 >
202206-13 SpringBoot feign动态设置数据源(https请求) 目录1、背景2、代码2.2、编写请求方法2.3、发送请求总结:1、背景在使用springboot-feign/spingcloud-feign时,需要在启动springboot的时候,注入的方式将feigncofing配置好,也就是说项目启动以后只能有一个数据源,且不能修改,在网上找了很多资料没有找到解决方案(网上应该有,只是我没有找到),后面只能是硬着头皮看源码,问题解决,在此记录一下,希望可以帮到有缘人2、代码其实在这里用的原生的feign,并不是springboot/sp... 继续阅读 >
202010-30 Tomcatc3p0配置jnid数据源2种实现方法解析 使用c3p0导入c3p0jar包<!--https://mvnrepository.com/artifact/com.mchange/c3p0--><dependency><groupId>com.mchange</groupId><artifactId>c3p0</artifactId><version>0.9.5.2</version></dependency>在tomcat的context.xml文件加入数据源配置<Resourceauth="Container"description="DBConnection"driverClass="com.mysql.jdbc.Driver"maxPoolSize="100"minPoolSize="2"acquireIncre... 继续阅读 >
202010-09 SpringBoot整合JPA数据源方法及配置解析 一、创建项目并导入依赖<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-jpa</artifactId></dependency><dependency><groupId>com.alibaba</groupId><artifactId>druid-spring-boot-starter</artifactId><version>1.1.10</version></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><scope>runtime</scope><versi... 继续阅读 >
202010-08 Spring数据库多数据源路由配置过程图解 项目中需要根据不同业务进行分库,首先是将业务不同业务映射到不同过的数据库(biz-->db,可能存在多对一情况),查看springjdbc源码发现AbstractRoutingDataSource类作为一个数据源路由抽象类,可以担当这个事情,其设计思想也比较简单,首先将多个数据源的映射关系自己维护完成后注入进来,然后自己定义一个路由规则,重点部分见代码:首先可以看到该类是一个抽象类,重点关注变量targetDataSource和resolvedDataSources.其中ta... 继续阅读 >
202009-29 Spring数据源及配置文件数据加密实现过程详解 ThefollowingexampleshowsthecorrespondingXMLconfiguration:<beanid="dataSource"class="org.springframework.jdbc.datasource.DriverManagerDataSource"><propertyname="driverClassName"value="${jdbc.driverClassName}"/><propertyname="url"value="${jdbc.url}"/><propertyname="username"value="${jdbc.username}"/><propertyname="password"value="${jdbc.password}"/></bean><context:property-p... 继续阅读 >