mybits plus配置不同数据库
时间: 2023-09-29 14:06:13 浏览: 130
MyBatis Plus 支持多数据源配置,可以在配置文件中配置多个数据源,然后在需要使用的地方指定使用哪个数据源。下面是一个简单的示例:
首先,在配置文件中定义多个数据源:
```
spring.datasource.master.url=jdbc:mysql://localhost:3306/master
spring.datasource.master.username=root
spring.datasource.master.password=root
spring.datasource.slave.url=jdbc:mysql://localhost:3306/slave
spring.datasource.slave.username=root
spring.datasource.slave.password=root
```
然后,在代码中指定要使用哪个数据源:
```
@Service
public class UserService {
@Autowired
@Qualifier("masterDataSource")
private DataSource masterDataSource;
@Autowired
@Qualifier("slaveDataSource")
private DataSource slaveDataSource;
public void testMaster() {
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(masterDataSource);
SqlSession sqlSession = sqlSessionFactory.openSession(true);
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
// 使用 master 数据源查询用户信息
List<User> userList = userMapper.selectList(null);
System.out.println(userList);
}
public void testSlave() {
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(slaveDataSource);
SqlSession sqlSession = sqlSessionFactory.openSession(true);
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
// 使用 slave 数据源查询用户信息
List<User> userList = userMapper.selectList(null);
System.out.println(userList);
}
}
```
在上面的代码中,我们分别注入了 master 数据源和 slave 数据源,并在需要使用的时候指定使用哪个数据源。在使用数据源时,我们通过 SqlSessionFactoryBuilder 来创建 SqlSessionFactory,然后使用 SqlSessionFactory 来获取 SqlSession,最后通过 SqlSession 获取 Mapper 并执行查询操作。
需要注意的是,MyBatis Plus 默认使用的是单数据源配置,如果需要使用多数据源配置,需要在配置文件中添加多个数据源,并在代码中指定使用哪个数据源。
阅读全文