废话不多说直接上代码吧
我们以 Mybatis Xml 版本为例,给大家展示如何如何配置多数据源。
配置文件
Pom 包就不贴了比较简单该依赖的就依赖,主要是数据库这边的配置:
一个 test1 库和一个 test2 库,其中 test1 位主库,在使用的过程中必须指定主库,不然会报错。
数据源配置
最关键的地方就是这块了,一层一层注入,首先创建 DataSource,然后创建 SqlSessionFactory 再创建事务,最后包装到 SqlSessionTemplate 中。其中需要指定分库的 mapper 文件地址,以及分库dao层代码
这块的注解就是指明了扫描 dao 层,并且给 dao 层注入指定的 SqlSessionTemplate。所有 @Bean
都需要按照命名指定正确。
dao 层和 xml层
dao 层和 xml 需要按照库来分在不同的目录,比如:test1 库 dao 层在 com.neo.mapper.test1
包下,test2 库在 com.neo.mapper.test2
xml 层
测试
测试可以使用 SpringBootTest,也可以放到 Controller中,这里只贴 Controller 层的使用
Mybatis 注解版本配置多数据源和 Xml 版本基本一致,搭建直接参考文末的示例项目。