[TASK_BATCH_ACIDLIVY] GconeSourceConfig MapperScan/setMapperLocations acidlivy 추가

This commit is contained in:
이주일
2026-05-25 01:47:35 +09:00
parent 4c6dd27e9f
commit 2ef2304947

View File

@@ -13,6 +13,7 @@ import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.DependsOn; import org.springframework.context.annotation.DependsOn;
import org.springframework.context.annotation.Primary; import org.springframework.context.annotation.Primary;
import org.springframework.core.io.ClassPathResource; import org.springframework.core.io.ClassPathResource;
import org.springframework.core.io.Resource;
import org.springframework.core.io.support.PathMatchingResourcePatternResolver; import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
import org.springframework.jdbc.datasource.DataSourceTransactionManager; import org.springframework.jdbc.datasource.DataSourceTransactionManager;
import org.springframework.jdbc.datasource.init.DataSourceInitializer; import org.springframework.jdbc.datasource.init.DataSourceInitializer;
@@ -21,11 +22,17 @@ import org.springframework.transaction.PlatformTransactionManager;
import org.springframework.transaction.annotation.EnableTransactionManagement; import org.springframework.transaction.annotation.EnableTransactionManagement;
import javax.sql.DataSource; import javax.sql.DataSource;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
@Configuration @Configuration
@EnableTransactionManagement @EnableTransactionManagement
@MapperScan( @MapperScan(
basePackages = "com.wb.domainserver.mapper.gcone", basePackages = {
"com.wb.domainserver.mapper.gcone",
"com.wb.domainserver.acidlivy"
},
sqlSessionFactoryRef = "gconeSqlSessionFactory" sqlSessionFactoryRef = "gconeSqlSessionFactory"
) )
public class GconeSourceConfig { public class GconeSourceConfig {
@@ -49,7 +56,13 @@ public class GconeSourceConfig {
// SqlSessionFactoryBean sessionFactory = new SqlSessionFactoryBean(); // SqlSessionFactoryBean sessionFactory = new SqlSessionFactoryBean();
SqlSessionFactoryBean sessionFactory = new RefreshableSqlSessionFactoryBean(); SqlSessionFactoryBean sessionFactory = new RefreshableSqlSessionFactoryBean();
sessionFactory.setDataSource(gconeDataSource); sessionFactory.setDataSource(gconeDataSource);
sessionFactory.setMapperLocations(new PathMatchingResourcePatternResolver().getResources("classpath*:mybatis/xml/mapper/gcone/**/*.xml"));
PathMatchingResourcePatternResolver resolver = new PathMatchingResourcePatternResolver();
List<Resource> mapperLocations = new ArrayList<>();
mapperLocations.addAll(Arrays.asList(resolver.getResources("classpath*:mybatis/xml/mapper/gcone/**/*.xml")));
mapperLocations.addAll(Arrays.asList(resolver.getResources("classpath*:mybatis/xml/mapper/acidlivy/**/*.xml")));
sessionFactory.setMapperLocations(mapperLocations.toArray(new Resource[0]));
sessionFactory.setConfigLocation(new PathMatchingResourcePatternResolver().getResource("classpath:mybatis/xml/config/mapper-config.xml")); sessionFactory.setConfigLocation(new PathMatchingResourcePatternResolver().getResource("classpath:mybatis/xml/config/mapper-config.xml"));
return sessionFactory.getObject(); return sessionFactory.getObject();
} }
@@ -65,7 +78,7 @@ public class GconeSourceConfig {
return new DataSourceTransactionManager(gconeDataSource); return new DataSourceTransactionManager(gconeDataSource);
} }
// Spring Batch 스키마 초기화 (BATCH_JOB_SEQ 등 시퀀스 테이블 생성) // Spring Batch schema init (BATCH_JOB_SEQ etc)
@Bean(name = "batchSchemaInitializer") @Bean(name = "batchSchemaInitializer")
public DataSourceInitializer batchSchemaInitializer(@Qualifier("gconeDataSource") DataSource gconeDataSource) { public DataSourceInitializer batchSchemaInitializer(@Qualifier("gconeDataSource") DataSource gconeDataSource) {
ResourceDatabasePopulator populator = new ResourceDatabasePopulator(); ResourceDatabasePopulator populator = new ResourceDatabasePopulator();