spring +mybatis 多数据源

Posted superficial。

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了spring +mybatis 多数据源相关的知识,希望对你有一定的参考价值。

先建两个util类

package util;

import org.springframework.stereotype.Component;

@Component
public class DataSourceContextHolder {  
     private static final ThreadLocal<String> contextHolder = new ThreadLocal<String>();  
  
     public static void setDbType(String dbType) {  
            contextHolder.set(dbType);  
     }  
  
     public static String getDbType() {  
            return ((String) contextHolder.get());  
     }  
  
     public static void clearDbType() {  
            contextHolder.remove();  
     }  
}  

  

package util;

import java.sql.SQLFeatureNotSupportedException;  
import java.util.logging.Logger;  
  
import org.springframework.jdbc.datasource.lookup.AbstractRoutingDataSource;
import org.springframework.stereotype.Component;  
@Component
public class DynamicDataSource extends AbstractRoutingDataSource {  
  
     @Override  
     public Logger getParentLogger() {  
            return null;  
     }  
  
     @Override  
     protected Object determineCurrentLookupKey() {  
            return DataSourceContextHolder. getDbType();  
     }  
  
}  

  在controller中直接

 

 

datasourcetwo  与datasourceone 是在properties中配的数据源

 

以上是关于spring +mybatis 多数据源的主要内容,如果未能解决你的问题,请参考以下文章

Spring整合Mybatis的注意事项

Spring整合MyBatis(Maven+MySQL)

Spring全家桶系列--SpringBoot与Mybatis结合

Spring boot Mybatis整合构建Rest服务(超细版)

Spring+MyBatis纯注解零XML整合

Spring注解处理Ajax请求-JSON格式[系统架构:Spring+SpringMVC+MyBatis+MySql]