From d1c51adbe86e067c5ad20b6115faaae2eedb0d0d Mon Sep 17 00:00:00 2001 From: seojh Date: Mon, 8 Jan 2024 14:11:54 +0900 Subject: [PATCH] =?UTF-8?q?fix:=20SecondaryMybatisConfig=20=EC=84=A4?= =?UTF-8?q?=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- mens-core/README.md | 34 +++++++++++++++++++ .../config/db/PrimaryMybatisConfig.java | 6 +--- .../config/db/SecondaryMybatisConfig.java | 3 +- 3 files changed, 36 insertions(+), 7 deletions(-) diff --git a/mens-core/README.md b/mens-core/README.md index 06052e1..5d9428a 100644 --- a/mens-core/README.md +++ b/mens-core/README.md @@ -170,3 +170,37 @@ json <-> java class 변환 적용 {TRAN_ID : null or ""} --> tranId 필드 제외 */ ``` +## SecondaryDB 설정 주의 +SecondaryDatasourceConfig +```text + @MapperScan( + basePackages = { + "kr.xit.other.mapper" + }, + sqlSessionFactoryRef = Constants.SECONDARY_SQL_SESSION + ) + + @MapperScan - basePackages설정 시 PrimaryDatasourceConfig 와 중복이 발생하지 않도록 주의 + 예) "kr.xit.biz.**.mapper"를 Primary에 설정 + "kr.xit.biz.other.mapper"를 Secondary에 설정할 경우 + Primary는 **로 인해 kr.xit.biz.other.mapper를 불러오고 Secondary도 kr.xit.biz.other.mapper를 불러와서 중복 발생 + 이로 인해서 mapper의 Name이 중복되어 정상 인식이 불가능. + +``` +## SecondaryDB 설정 주의 +SecondaryDatasourceConfig +```text + @MapperScan( + basePackages = { + "kr.xit.other.mapper" + }, + sqlSessionFactoryRef = Constants.SECONDARY_SQL_SESSION + ) + + @MapperScan - basePackages설정 시 PrimaryDatasourceConfig 와 중복이 발생하지 않도록 주의 + 예) "kr.xit.biz.**.mapper"를 Primary에 설정 + "kr.xit.biz.other.mapper"를 Secondary에 설정할 경우 + Primary는 **로 인해 kr.xit.biz.other.mapper를 불러오고 Secondary도 kr.xit.biz.other.mapper를 불러와서 중복 발생 + 이로 인해서 mapper의 Name이 중복되어 정상 인식이 불가능. + +``` diff --git a/mens-core/src/main/java/kr/xit/core/spring/config/db/PrimaryMybatisConfig.java b/mens-core/src/main/java/kr/xit/core/spring/config/db/PrimaryMybatisConfig.java index 7e12e7d..4035212 100644 --- a/mens-core/src/main/java/kr/xit/core/spring/config/db/PrimaryMybatisConfig.java +++ b/mens-core/src/main/java/kr/xit/core/spring/config/db/PrimaryMybatisConfig.java @@ -39,11 +39,7 @@ import org.springframework.jdbc.support.lob.DefaultLobHandler; @MapperScan( basePackages = { "kr.xit.core.**.mapper", - "kr.xit.biz.cmm.mapper", - "kr.xit.biz.kt.mapper", - "kr.xit.biz.mbl.mapper", - "kr.xit.biz.nice.mapper", - "kr.xit.biz.sisul.mapper", + "kr.xit.biz.**.mapper", "kr.xit.ens.**.mapper" }, sqlSessionFactoryRef = Constants.PRIMARY_SQL_SESSION diff --git a/mens-core/src/main/java/kr/xit/core/spring/config/db/SecondaryMybatisConfig.java b/mens-core/src/main/java/kr/xit/core/spring/config/db/SecondaryMybatisConfig.java index 7c68190..b0d2b17 100644 --- a/mens-core/src/main/java/kr/xit/core/spring/config/db/SecondaryMybatisConfig.java +++ b/mens-core/src/main/java/kr/xit/core/spring/config/db/SecondaryMybatisConfig.java @@ -34,7 +34,7 @@ import org.springframework.core.io.support.PathMatchingResourcePatternResolver; @ConditionalOnProperty(value = "spring.datasource.hikari.secondary.username") @MapperScan( basePackages = { - "kr.xit.biz.other.mapper" + "kr.xit.other.mapper" }, sqlSessionFactoryRef = Constants.SECONDARY_SQL_SESSION ) @@ -50,7 +50,6 @@ public class SecondaryMybatisConfig { sessionFactory.setDataSource(dataSource); sessionFactory.setConfigLocation(resolver.getResource(MYBATIS_CONFIG_FILE)); sessionFactory.setMapperLocations(resolver.getResources(String.format("classpath:/egovframework/mapper/**/*-%s-mapper.xml", database))); - System.out.println("database:"+database); return sessionFactory.getObject(); }