본문 바로가기

분류 전체보기163

Service - ServiceImpl 쓰지 말라고만 하고 사라지면 어떡해요! 요즘은 많이 줄어들었지만 예전에는 개발을 하다 보면 Service - ServiceImpl 구조를 굉장히 많이 만나볼 수 있었다. 나 조차도 사실 이걸 왜 써야하는지, 근본적인 이유가 무엇인지에 대한 의문을 품지 않고 그저 이런 구조를 사용해서 개발을 하는 것이 회사 개발팀의 컨벤션이기도 했고, 사실 큰 불편함도 없기도 해서 사용하기도 했다. 어느 날 개발을 하던 도중에 의문이 생겼다. 아무리 봐도 대부분의 Service와 ServiceImpl의 관계는 1:1에서 더 이상 바뀔 일이 없을 것 같아 보였고, 동료 개발자에게 질문을 했다. 왜 이런 구조를 채택했냐고. 돌아온 대답은 우리가 알고 있는 이유와 비슷했다. 인터페이스와 구현체를 분리함으로써 얻을 수 있는 이점이 많다는 이유였다. 틀린 말은 아니다... 2024. 2. 26.
RestTemplate은 너무 낡았고, WebClient는 너무 귀찮아. 뭐? RestClient? 스프링 6.1 버전, 그리고 스프링 부트 3.2.0-M1 버전부터 새롭게 RestClient가 등장했습니다. 이미 스프링에는 RestTemplate과 WebClient가 있는데 왜 굳이 새로운 Http Client를 추가시킨 걸까요? RestClient는 무엇이고, 기존 RestTemplate나 WebClient와는 무엇이 다른 걸까요? RestTemplate RestClient를 알아보기 전에 우선 RestTemplate부터 간단하게 알아보도록 합시다. RestTemplate의 첫 등장은 2009년, 스프링 3.0 버전과 함께였습니다. 첫 등장 당시에는 그렇게 크지 않은 크기의 클래스였습니다. 여러 오버로드 메서드들을 사용해서 다른 서비스의 API를 호출할 수 있는 여러 방법을 제공했습니다. 하지만 시.. 2024. 2. 21.
면접관 : 스프링부트 auto-configuration의 동작방식을 설명해주세요. - 2 면접관 : 스프링부트 auto-configuration의 동작방식을 설명해주세요. - 1 우선 우리가 본 콘솔 출력 내용을 다시 한 번 보도록 하겠습니다. ============================ CONDITIONS EVALUATION REPORT ============================ Positive matches: ----------------- AopAutoConfiguration matched: - @ConditionalOnProperty (spring.aop.auto=true) matched (OnPropertyCondition) AopAutoConfiguration.AspectJAutoProxyingConfiguration matched: - @ConditionalOnC.. 2024. 2. 16.
면접관 : 스프링부트 auto-configuration의 동작방식을 설명해주세요. - 1 본 포스팅에 있는 내용이 100% 정답이라고 할 수도 없고, 검색하며 읽어보고 강의를 들으면서 배운 내용을 정리한다는 목적이 더 큰 포스팅이므로 부족한 부분이 많을 수 있습니다. 언제든 댓글등으로 의견 남겨주셔서 더 좋은 포스팅이 되도록 도와주시면 감사하겠습니다. 면접관 : 스프링부트 auto-configuration의 동작방식을 설명해주세요. - 2 스프링부트로 개발을 하면서 관련 문서를 하나 둘 읽다 보면 auto-configuration이라는 말을 적어도 한 번은 보셨을 겁니다. 아니면 이 글의 제목처럼 면접을 보러 갔더니 그동안 내가 달달 외운 Dependency Injection이나 Spring Bean, 아니면 하다못해 JVM이 무엇인지는 안 물어보고 난데없이 스프링부트 auto-configu.. 2024. 2. 13.
728x90