[JAVA] Spring MyBatis @MapperScan Multiple

Je souhaite modifier ExecutorType et définir MapperScan dans un projet utilisant Spring et MyBatis DataSorce utilise la même chose et change uniquement ExecutorType en BATCH, REUSE S'applique aux processus qui effectuent plusieurs mises à jour de BATCH, REUSE s'applique aux autres MapperScan pourrait être défini dans la même classe

SqlSessionConfig.java


@Configuration
public class SqlSessionConfig {
  @Bean
  public SqlSessionFactory sqlSessionFactory(DataSource datasource) throws Exception {
    SqlSessionFactoryBean sqlSessionFactory = new SqlSessionFactoryBean();
    sqlSessionFactory.setDataSource(datasource);
    return (SqlSessionFactory) sqlSessionFactory.getObject();
  }
  @Bean(name = "defaultSqlSessionTemplate")
  public SqlSessionTemplate sqlSessionFactory(SqlSessionFactory sqlSessionFactory) throws Exception {
    return new SqlSessionTemplate(sqlSessionFactory);
  }
  @Bean(name = "reuseSqlSessionTemplate")
  public SqlSessionTemplate sqlSessionFactory(SqlSessionFactory sqlSessionFactory) throws Exception {
    return new SqlSessionTemplate(sqlSessionFactory, ExecutorType.REUSE);
  }
  @Bean(name = "batchSqlSessionTemplate")
  public SqlSessionTemplate sqlSessionFactory(SqlSessionFactory sqlSessionFactory) throws Exception {
    return new SqlSessionTemplate(sqlSessionFactory, ExecutorType.BATCH);
  }
}
@MapperScan(basePackages = "jp.co.sample.mapper.defaul", sqlSessionTemplateRef = "defaultSqlSessionTemplate")
class DefaultMapperScan {
}
@MapperScan(basePackages = "jp.co.sample.mapper.reuse", sqlSessionTemplateRef = "reuseSqlSessionTemplate")
class ReuseMapperScan {
}
@MapperScan(basePackages = "jp.co.sample.mapper.batch", sqlSessionTemplateRef = "batchSqlSessionTemplate")
class BatchMapperScan {
}

Recommended Posts

Spring MyBatis @MapperScan Multiple
Méthode de configuration de la connexion Spring + MyBatis
J'ai essayé d'utiliser Spring + Mybatis + DbUnit
[Spring] Plusieurs beans auto-câblés. (Avec bonus)
Méthode de configuration de la connexion Spring + MyBatis <table join>