jojoldu / blog-comments

블로그에 utteranc 사용하기
12 stars 2 forks source link

296 #264

Closed utterances-bot closed 1 year ago

utterances-bot commented 5 years ago

Spring Boot & HikariCP Datasource 연동하기

안녕하세요? 이번 시간엔 Spring Boot & Hikari Datasource 연동하기 예제를 진행해보려고 합니다. 모든 코드는 Github에 있기 때문에 함께 보시면 더 이해하기 쉬우실 것 같습니다. (공부한 내용을 정리하는 Gith..

https://jojoldu.tistory.com/296

cheese10yun commented 5 years ago

안녕하세요 매번 블로그글 정말 감사하게 보고 있습니다.

DB를 2개 이상 사용해야할 경우 이렇게 직접 Datasource를 만들어야 합니다.

관련 질문이 있습니다. DB를 두개 사용하게 될경우 Datasource 하나는 yml, 하나는 JavaConfig 파일로 만들어서 사용하는 방법도 괜찮을까요?

yml

datasource:
    hikari:
      jdbc-url: ....
      username: root
      password:
      driver-class-name: com.mysql.cj.jdbc.Driver

DataSoruce

@Component
public class OAuth2DataSource {

    @Bean
    public HikariDataSource hikariDataSource() {
        HikariDataSource ds;

        HikariConfig config = new HikariConfig();
        config.setJdbcUrl("jdbc:mysql://....);
        config.setUsername("root");
        config.setPassword("");
        config.isReadOnly();
        ds = new HikariDataSource(config);
        return ds;
    }
}
jojoldu commented 5 years ago

@cheese10yun 제가 알기로는 해당 방식은 안되는걸로 알고 있습니다 ^^; (테스트 해보진 않았어서 틀릴수 있습니다) 그리고 설사 된다해도 권장하지는 않습니다. DataSource 설정이 너무 광범위하게 퍼져버립니다.

이렇게 레이어를 나누는게 이후에 유지보수 하기가 훨씬더 편한걸 경험해서 웬만해선 서로 침범하는 방식을 사용하지는 않습니다 ^^;

cheese10yun commented 5 years ago

@jojoldu 해당 설정이 동작은 하는데 동욱님이 말씀 하신 것처럼 yml 에서 DataSource 관련 코드들을 한눈에 볼 수 있는 것이 좋은거 같습니다.

항상 블로그 잘 보고 있습니다. 감사합니다.

cheese10yun commented 5 years ago

@jojoldu

정상 동작하지 않네요 둘다 JavaConfig 설정이 필요하네요.

컴파일은 되서 동작하는 걸로 착각했습니다. 답변 감사해용

KiwookAn commented 4 years ago

jasypt 를 사용하여 properties를 암호화 중 계속 datasource에서 빈을 못만들어 부트가 실행되지 못한 상황이였는데 게시글 참조하여
빈두개 로 Datasource 와 HikariConfig를 합쳐서 사용하던 기존 코드를 빈 한개로 생성하니 해결되었습니다.. ㅜㅜ 선생님 감사합니다(이제는 어디서 터졌는지 확인해봐야겠습니다)