[데이터베이스 여러 개 쓸 때, 어느 DataSource를 쓰는지 확인하는 방법]

hamonjamon·2023년 4월 10일
0

sqlSessionTemplate을 지나 BaseExecutor 클래스 내 다음 메서드 내 파라미터를 확인하면 된다.


// 다음의 메서드 내 ms > configuration > environment > dataSource > url에 명시되어 있다.

private <E> List<E> queryFromDatabase(MappedStatement ms, Object parameter, RowBounds rowBounds, ResultHandler resultHandler, CacheKey key, BoundSql boundSql) throws SQLException

나같은 경우, 로그로 쿼리를 확인하기 위해 log4j를 세팅하는 과정에서 우선순위에 영향을 주었는지, Default로 잡힌 DataSource가 DB Connection되지 않고, 다른 DataSource가 Connection되어서 한 번 내부까지 까보았다. 이 방법을 몰라서 엄한 곳을 뒤지느라 시간 낭비를 하였다.

이렇듯, 데이터베이스 다중 연동을 통해 개발하다, 해당 sql문이 수행되는 DB의 주소를 알고 싶다면 참고하면 좋을 것 같다.

0개의 댓글