본문 바로가기
728x90
반응형

스프링182

[Spring] Converter 적용하기 (스프링과 뷰 템플릿에 적용) 스프링에 Converter 적용하기 웹 애플리케이션에 Converter 를 적용해보자. WebConfig - 컨버터를 등록한다. package hello.typeconverter; import hello.typeconverter.converter.IntegerToStringConverter; import hello.typeconverter.converter.IpPortToStringConverter; import hello.typeconverter.converter.StringToIntegerConverter; import hello.typeconverter.converter.StringToIpPortConverter; import org.springframework.context.annotation.C.. 2024. 1. 7.
[Spring] 스프링 컨버전 서비스 - ConversionService, 그리고 인터페이스 분리 원칙(ISP) https://www.logicbig.com/tutorials/spring-framework/spring-core/conversion-service.html Spring - Conversion Service Spring - Conversion Service [Last Updated: Dec 22, 2023] www.logicbig.com https://drcode-devblog.tistory.com/571 [Spring] 스프링 타입 컨버터 - 타입 컨버터 스프링 타입 컨버터 스프링 강의는 스프링부트 2버전이었지만 필자는 더 이상 스프링 공식 사이트에서 2버전에 대한 지원을 종료하여 자바 17버전으로 업그레이드, 스프링부트 3버전을 사용합니 drcode-devblog.tistory.com 위 게시글의 타.. 2023. 12. 28.
[Spring] 스프링 타입 컨버터 - 타입 컨버터 스프링 타입 컨버터 스프링 강의는 스프링부트 2버전이었지만 필자는 더 이상 스프링 공식 사이트에서 2버전에 대한 지원을 종료하여 자바 17버전으로 업그레이드, 스프링부트 3버전을 사용합니다. 스프링 타입 컨버터? 문자 → 숫자, 숫자 → 문자로 변환해야 하는 것처럼 애플리케이션을 개발하다보면 타입 변환이 필요한 경우 많다. HelloController - 문자 타입을 숫자 타입으로 변경 package hello.typeconverter.controller; import jakarta.servlet.http.HttpServletRequest; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bi.. 2023. 12. 6.
[Spring] API 예외 처리 - @ExceptionHandler 와 @ControllerAdvice @ExceptionHandler HTML 화면오류 vs API 오류 웹 브라우저에 HTML 화면을 제공할 때는 오류가 발생하면 BasicErrorController 를 사용하는게 편하다. 이때는 단순히 5xx, 4xx 관련된 오류 화면을 보여주면 된다. BasicErrorController 는 이런 메커니즘을 모두 구현해두었다. 그런데 API는 각 시스템 마다 응답의 모양도 다르고, 스펙도 모두 다르다. 예외 상황에 단순히 오류 화면을 보여주는 것이 아니라, 예외에 따라서 각각 다른 데이터를 출력해야 할 수도 있다. 그리고 같은 예외라고 해도 어떤 컨트롤러에서 발생했는가에 따라서 다른 예외 응답을 내려주어야 할 수 있다. 한마디로 매우 세밀한 제어가 필요하다. 예를 들어서 상품 API와 주문 API는 오.. 2023. 12. 4.
[Spring] API 예외 처리 - 스프링이 제공하는 ExceptionResolver API 예외 처리 - 스프링이 제공하는 ExceptionResolver 스프링 부트가 기본으로 제공하는 ExceptionResolver 는 다음과 같다. HandlerExceptionResolverComposite 에 다음 순서로 등록 1. ExceptionHandlerExceptionResolver 2. ResponseStatusExceptionResolver 3. DefaultHandlerExceptionResolver → 우선 순위가 가장 낮다. ExceptionHandlerExceptionResolver @ExceptionHandler 을 처리한다. API 예외 처리는 대부분 이 기능으로 해결한다. ResponseStatusExceptionResolver HTTP 상태 코드를 지정해준다. 예) @.. 2023. 12. 3.
[Spring] API 예외처리 - HandlerExceptionResolver API 예외 처리 - 시작 목표 API 예외 처리는 어떻게 해야할까? HTML 페이지의 경우 4xx, 5xx와 같은 오류 페이지만 있으면 대부분의 문제를 해결할 수 있다. 그런데 API의 경우에는 생각할 내용이 더 많다. 오류 페이지는 단순히 고객에게 오류 화면을 보여주고 끝이지만, API는 각 오류 상황에 맞는 오류 응답 스펙을 정하고, JSON으로 데이터를 내려주어야 한다. API도 오류 페이지처럼 처음으로 돌아가서 서블릿 오류 페이지 방식을 사용해보도록 하 WebServerCustomizer 다시동작 package hello.exception; import org.springframework.boot.web.server.ConfigurableWebServerFactory; import org.spr.. 2023. 12. 1.
728x90
반응형