spring+mybatis多数据源的配置

解决方案:

专注于为中小企业提供网站制作、网站设计服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业宁河免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了上千多家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。

多套sqlSessionFactory,针对不同的数据源

数据源

Xml代码  spring+mybatis多数据源的配置

  1.   

  2.       

  3.         peccancy  

  4.         jdbc:oracle:thin:@172.16.60.46:1521:orcl  

  5.         oracle.jdbc.driver.OracleDriver  

  6.           

  7.               

  8.               

  9.           

  10.         ...  

  11.       

  12.       

  13.         yhtepap  

  14.         jdbc:oracle:thin:@172.16.60.46:1521:orcl  

  15.         oracle.jdbc.driver.OracleDriver  

  16.           

  17.               

  18.               

  19.           

  20.         ...  

  21.       

  22.   

 1.方法一

Xml代码  spring+mybatis多数据源的配置

  1.     

  2.         

  3.         org.logicalcobwebs.proxool.ProxoolDriver    

  4.         

  5.         

  6.         proxool.peccancy    

  7.         

  8.     

  9.     

  10.         

  11.         org.logicalcobwebs.proxool.ProxoolDriver    

  12.         

  13.         

  14.         proxool.pap    

  15.         

  16.    

  

Xml代码  spring+mybatis多数据源的配置

  1.   

  2.       

  3.       

  4.           

  5.             classpath:net/yhte/common/query/mapper/PageData_Mapper.xml  

  6.             classpath*:net/yhte/web/peccancy/**/mapper/*Mapper.xml  

  7.           

  8.       

  9.   

  10.   

  11.       

  12.       

  13.   

  14.   

  15.       

  16.       

  17.           

  18.             classpath*:net/yhte/web/pap/**/mapper/*Mapper.xml  

  19.             classpath:net/yhte/common/query/mapper/PageData_Mapper.xml  

  20.           

  21.       

  22.   

  23.   

  24.       

  25.       

  26.   

 本方案需要根据数据源的不同对*Mapper.xml进行分包处理,便于配置,同一个包下的*Mapper.xml如果对应的数据源不同,则不方便使用通配符进行统一扫描配置,且sqlSessionFactory扫包的basePackage 也需要分包。

2.使用自定义注解来取代spring的repository设置到annotationClass中。这样每个mapper文件中注入相应的注解@PapRepository,@PeccancyRepository

 改成

  配置文件如下:

Xml代码  spring+mybatis多数据源的配置

  1.   

  2.           

  3.           

  4.               

  5.                 classpath:net/yhte/common/query/mapper/PageData_Mapper.xml  

  6.                 classpath*:net/yhte/web/**/mapper/*Mapper.xml  

  7.               

  8.           

  9.       

  10.       

  11.           

  12.           

  13.           

  14.       

  15.       

  16.           

  17.           

  18.               

  19.                 classpath:net/yhte/common/query/mapper/PageData_Mapper.xml  

  20.                 classpath*:net/yhte/web/**/mapper/*Mapper.xml  

  21.               

  22.           

  23.       

  24.       

  25.           

  26.           

  27.           

  28.       

 如上所配置使用pap的mapper文件就加上注解@PapRepository

Java代码  spring+mybatis多数据源的配置

  1. public @interface PeccancyRepository {  

  2.   

  3. }  

  4.   

  5. public @interface PapRepository {  

  6.   

  7. }  

 

 

Java代码  spring+mybatis多数据源的配置

  1. // 使用dataSource_pap 数据源    

  2. @PapRepository  

  3. public interface UserMapper {  

  4.     List find(UserQueryBean userQueryBean);  

  5. }  

  6. // 使用dataSource_peccancy 数据源    

  7. @PeccancyRepository  

  8. public interface ParameterMapper{  

  9.   

  10.     List find(ParameterQueryBean queryBean);  

  11. }  

 

spring+mybatis多数据源的配置

获取【下载地址】   

最主流的Java后台框架 springmvc spring mybatis SSM 项目源码


新闻标题:spring+mybatis多数据源的配置
标题URL:http://myzitong.com/article/ghjegs.html