Spring (3) 썸네일형 리스트형 [Spring MVC] DispatcherServlet 에서 발생하는 다양한 에러 핸들링하기 최근 타 결제 서비스와 결제 연동 작업을 하다가 해당 서비스가 요구하는 스펙에 맞추어 API 응답을 보내줘야 하는 경우가 생겼습니다. 외부 결제 서비스가 명시해놓은 고려해야 하는 예외 상황이 올바르지 않은 HTTP 메서드올바르지 않은 media type올바르지 않은 url path등이 있어서, 이러한 상황에서 발생하는 예외들을 처리해주는 CustomExceptionHandler 를 만들기로 했습니다. 다만 이미 GlobalExceptionHandler가 프로젝트 내에 존재했고, 해당 서비스에 한해서만 스펙을 맞춰서 응답하면 됐기 때문에 ControllerAdvice 애너테이션에 basePackages를 설정해주었습니다. package com.yoon1fe.api.xxx.controller;@RestCon.. [Spring] 스프링의 다양한 의존관계 주입 방식 (+ 생성자 주입을 권장하는 이유) 스프링 프레임워크에서 의존 관계 주입(Dependency Injection, DI)이란 스프링 컨테이너에서 객체 빈(Spring bean)을 생성해 두고, 생성한 객체를 필요한 객체에 주입하는 방식을 말합니다. 객체 자체가 코드 상에서 객체 생성에 관여하지 않아도 되기 때문에 객체 사이의 의존성을 낮출 수 있습니다. 의존 관계 주입을 사용하면 유연하고 확장성이 뛰어난 코드가 되는 것이죠. 스프링의 의존 관계 주입 방법에는 크게 세 가지 방법이 있습니다. 필드 주입 수정자 주입 (setter 주입) 생성자 주입 오늘은 이 세 방법에 대해 알아보고, 의존 관계 주입 시 생성자 주입을 권장하는 이유를 알아보겠습니다. 필드 주입 @Service public class MyService { @Autowired p.. [Spring] RestTemplate의 Error Handling 오늘은 RestTemplate의 Error Handling에 대해 간단히 알아보겠습니다. RestTemplate은 스프링 3.0 부터 지원하는 객체로, 동기식으로 HTTP 요청을 수행하는 역할을 합니다. 참고로 스프링 5부터는 WebFlux 스택과 함께 WebClient 라는 새로운 HTTP 클라이언트가 도입되었고, 현재 RestTemplate은 Deprecated... 된줄 알았는데 되진 않고 WebClient 사용을 권장하고 있습니다. RestTemplate은 ResponseErrorHandler 타입의 errorHandler라는 필드를 가집니다. ResponseErrorHandler 인터페이스는 다음 두 개의 메서드를 갖고 있구요. package org.springframework.web.clien.. 이전 1 다음