본문 바로가기

Spring/Spring Boot11

[Spring Boot] HTTP Status Code 제어 및 Exception Handling HTTP Status Code 제어 및 Exception Handling 1. HTTP Status Code의 중요성 2. HTTP Status Code 제어 3. HTTP State Code 제어를 위한 Exception Handling 4. Spring의 AOP를 이용한 Exception Handling 📌 HTTP Status Code의 중요성 간단한 예제를 통해 알아보자. ID가 1~3인 회원이 존재한다. 존재하는 회원 조회 존재하지 않는 회원 조회(좋지 않은 API 설계) 존재하지 않는 회원을 조회하여 에러가 발생할 것을 예상했지만 상태코드는 200이 반환되었다. 그 이유는 HTTP 입장에서는 해당 URL 호출이 문법적으로 오류가 없고 정상적으로 서버에서 응답을 반환받았기 때문이다. 존재하지 않.. 2023. 6. 21.
[Spring Boot] 테스트 환경 application.yml 분리 STS에서 테스트 코드 작성 중 테스트 실행환경을 분리하기 위해 test/resources 경로에 application.yml 파일을 생성하였다. JUnit5 테스트 실행 시 test/resources 경로에 application.yml 파일을 생성하였는데도 불구하고 해당 파일을 인식하지 못하고 main/resources 경로의 resources application.yml 파일로 실행되었다. ??? 찾아보니 intelliJ는 테스트에서 실행하면 test/resources/application.yml을 먼저 읽게되지만 다른 IDE에서는 아닌 것 같다. intelliJ가 아닌 타 IDE에서는 다음과 같은 추가 설정이 필요하다. 1. application.yml 추가 설정 (main/resources/app.. 2023. 4. 5.
[Spring] 빈 스코프 스프링 핵심 원리 - 기본편 - 인프런 | 강의 스프링 입문자가 예제를 만들어가면서 스프링의 핵심 원리를 이해하고, 스프링 기본기를 확실히 다질 수 있습니다., - 강의 소개 | 인프런 www.inflearn.com 해당 글은 인프런의 [스프링 핵심 원리 - 기본편] 강의를 정리한 내용입니다. 빈 스코프란? 지금까지 우리는 스프링 빈이 스프링 컨테이너의 시작과 함께 생성되어서 스프링 컨테이너가 종료될 때까지 유지된다고 학습했다. 이것은 스프링 빈이 기본적으로 싱글톤 스코프로 생성되기 때문이다. 스코프는 번역 그대로 빈이 존재할 수 있는 범위를 뜻한다. 스프링은 다음과 같은 다양한 스코프를 지원한다. 싱글톤 : 기본 스코프, 스프링 컨테이너의 시작과 종료까지 유지되는 가장 넓은 범위의 스코프이다. 프로토타.. 2023. 3. 31.
[Spring] 빈 생명주기 콜백 스프링 핵심 원리 - 기본편 - 인프런 | 강의 스프링 입문자가 예제를 만들어가면서 스프링의 핵심 원리를 이해하고, 스프링 기본기를 확실히 다질 수 있습니다., - 강의 소개 | 인프런 www.inflearn.com 해당 글은 인프런의 [스프링 핵심 원리 - 기본편] 강의를 정리한 내용입니다. 빈 생명주기 콜백 시작 데이터베이스 커넥션 풀이나, 네트워크 소켓처럼 애플리케이션 시작 시점에 필요한 연결을 미리 해두고, 애플리케이션 종료 시점에 연결을 모두 종료하는 작업을 진행하려면, 객체의 초기화와 종료 작업이 필요하다. 이번시간에는 스프링을 통해 이러한 초기화 작업과 종료 작업을 어떻게 진행하는지 예제로 알아보자. 간단하게 외부 네트워크에 미리 연결하는 객체를 하나 생성한다고 가정해 보자. 실제로 네트워크.. 2023. 3. 29.