【问题标题】:mybatis-spring java annotation for multiple datasources多数据源的mybatis-spring java注解
【发布时间】:2016-02-12 16:14:12
【问题描述】:

我可以使用下面的代码在spring中配置多个mybatis数据源。在mybatis-spring中使用java注解和配置(无xml)有什么办法呢?

public class DataSourceSqlSessionFactory {

   private Logger logger = LoggerFactory.getLogger(getClass());

   private final static String MYBATIS_CONFIG = "mybatis-config-datasource.xml" ;

   public final static String AMDB_ENVIRONMENT_ID = "DB1" ;

   public final static String AODB_ENVIRONMENT_ID = "DB2" ;

   public SqlSessionFactory getSqlSessionFactory(String environment){
       InputStream inputStream = null ;
       SqlSessionFactory sqlSessionFactory = null ;
       try {
           inputStream = Resources.getResourceAsStream(MYBATIS_CONFIG);
           sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream , environment);
           inputStream.close();
           logger.info("Get ["+environment +"] data source connection");
       } catch (IOException e) {
           logger.error("Get ["+environment +"] data source connection failed, error messages : " + e);
       }
       return sqlSessionFactory ;
   }

}

【问题讨论】:

    标签: java spring spring-mvc mybatis spring-mybatis


    【解决方案1】:

    您只需要使用@MapperScan 注解注册您的映射器。然而,结果映射可以添加到提供给 SqlSessionFactoryBuilder 的配置对象中。

    在您的“getSqlSessionFactory”方法中写入以下内容:

    org.apache.ibatis.session.Configuration config = new org.apache.ibatis.session.Configuration(environment);
    config.addResultMap(someResultMap);
    return new SqlSessionFactoryBuilder().build(config);
    

    你就完成了。尽情享受吧!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-06-12
      • 1970-01-01
      • 2018-01-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多