spring+mybatis多数据源的配置
解决方案:
专注于为中小企业提供网站制作、网站设计服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业宁河免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了上千多家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
多套sqlSessionFactory,针对不同的数据源
数据源
Xml代码
peccancy jdbc:oracle:thin:@172.16.60.46:1521:orcl oracle.jdbc.driver.OracleDriver ...
yhtepap jdbc:oracle:thin:@172.16.60.46:1521:orcl oracle.jdbc.driver.OracleDriver ...
1.方法一
Xml代码
org.logicalcobwebs.proxool.ProxoolDriver proxool.peccancy org.logicalcobwebs.proxool.ProxoolDriver proxool.pap
Xml代码
classpath:net/yhte/common/query/mapper/PageData_Mapper.xml classpath*:net/yhte/web/peccancy/**/mapper/*Mapper.xml classpath*:net/yhte/web/pap/**/mapper/*Mapper.xml classpath:net/yhte/common/query/mapper/PageData_Mapper.xml
本方案需要根据数据源的不同对*Mapper.xml进行分包处理,便于配置,同一个包下的*Mapper.xml如果对应的数据源不同,则不方便使用通配符进行统一扫描配置,且sqlSessionFactory扫包的basePackage 也需要分包。
2.使用自定义注解来取代spring的repository设置到annotationClass中。这样每个mapper文件中注入相应的注解@PapRepository,@PeccancyRepository
改成
配置文件如下:
Xml代码
classpath:net/yhte/common/query/mapper/PageData_Mapper.xml classpath*:net/yhte/web/**/mapper/*Mapper.xml classpath:net/yhte/common/query/mapper/PageData_Mapper.xml classpath*:net/yhte/web/**/mapper/*Mapper.xml
如上所配置使用pap的mapper文件就加上注解@PapRepository
Java代码
public @interface PeccancyRepository {
}
public @interface PapRepository {
}
Java代码
// 使用dataSource_pap 数据源
@PapRepository
public interface UserMapper {
List
find(UserQueryBean userQueryBean); }
// 使用dataSource_peccancy 数据源
@PeccancyRepository
public interface ParameterMapper{
List
find(ParameterQueryBean queryBean); }
获取【下载地址】
最主流的Java后台框架 springmvc spring mybatis SSM 项目源码
网站标题:spring+mybatis多数据源的配置
标题路径:http://scyanting.com/article/ghjegs.html