2024年6月15日发(作者:)

dynamicdatasource 用法

DynamicDataSource 是一个可以动态切换数据源的 Java 数据库连接池框架,

适用于多数据源动态切换的场景,该框架支持 Spring、MyBatis、JdbcTemplate

等多种框架。

DynamicDataSource 的使用方法如下:

1. 配置数据源

可以在 Spring 配置文件中配置多个数据源,如下:

class="ooledDataSource">

value="jdbc:mysql:localhost:3306/test1"/>

class="ooledDataSource">

value="jdbc:mysql:localhost:3306/test2"/>

2. 配置动态数据源

可以在 Spring 配置文件中配置 DynamicDataSource,如下:

class="cDataSource">

在上面的例子中,DynamicDataSource 的 defaultTargetDataSource 属性为

dataSource1,targetDataSources 属性配置了一个 Map,其中 key 为数据

源的名称,value 为对应的数据源。

3. 在代码中使用 DynamicDataSource

可以在代码中通过 DynamicDataSourceContextHolder 类来切换数据源,例

如:

aSourceKey("dataSource1");

切换到 dataSource1 数据源

执行查询语句

String sql = "select * from table";

List> resultList = orList(sql);

aSourceKey("dataSource2");

切换到 dataSource2 数据源

执行查询语句

String sql2 = "select * from table2";

List> resultList2 =

orList(sql2);

可以通过 aSourceKey 方法来切

换数据源,同时可以在事务嵌套的情况下保证事务的正确性。