작성
·
624
1
답변 1
7
안녕하세요, 이도원입니다.
Spring Framework에서 초기 설정을 XML 파일로만 했던 거에 비해 Spring 3.2.x 버전부터는 Annotation을 통해 DI나 Bean의 사용이 가능해졌습니다. 내부적인 복잡한 처리 과정이나, 속도 문제 등을 떠나서 이 부분을 결정하는 주요인은 작업의 스타일과 편의성으로 갈라진다고 생각합니다. 제 경험으로 예전에 근무했었던 금융회사의 리더도 XML을 고집하는 쪽이었으며, 그 편이 스프링 빈의 생성이나 관계를 쉽게 파악할 수 있다는게 이유였습니다. 덕분에(?) 스프링 버전을 2.5.x로 유지하면서 개발했었습니다.
문의하신 질문은 application.yml 파일(설정 파일)과 Configuration 클래스(자바 설정 클래스)에 대한 내용인 것 같습니다. Configuration 클래스를 사용하면, 자바 컴파일러에 의해 문법적인 오류를 바로 찾을 수 있습니다. 컴퍼일러에 의해 빈 클래스가 제대로 매칭 된 것인지도 구분할 수 있습니다. 상대적으로 application.yml과 같은 설정 파일의 경우는 작성하기 쉽고, 불필요한 자바 코드 없이 사용할 수 있으며, 어느 정도까지의 매핑관계는 쉽게 파악할 수 있습니다.
그러나, Gateway의 역할이 커지고, 라우팅 해야하는 양이 늘어나고, 구분해야할 카테고리가 많다면 자바 클래스로 처리하는 게 유리할 수 있다고 생각됩니다. 물론 application.yml 파일로 여러개 분리하실 수도 있겠지만, 용도나 기준에 맞춰 클래스로 구분하는 게 더 효율적이라고 생각됩니다. 어디까지나 제 주관적인 생각이고, 미리 어떤것이 좋은지, 장단점이 결정하고 작업하시기 보다는, 몇가지 작업 진행하면서, 관맂의 편의성과 개발 시간의 단축 등을 고려하셔서 선택하시면 어떨가 합니다.
감사합니다.