Spring Boot 공통 처리 패턴(예외처리, 공통 응답, 검증, MDC)
1. 개요 API 서버를 개발할 때 반복적으로 등장하는 공통 처리 패턴들이 있다. 응답 포맷을 통일하지 않으면 클라이언트가 엔드포인트마다 다른 파싱 로직을 작성해야 하고, 예외 처리가 분산되면 일관성을 유지하기 어렵다. 이 글에서는 실무에서 바로 적용할 수 있는 공통 처리 구조를 코드 레벨로 정리한다. 주제 내용 공통 응답 포맷 ApiResponse&...
1. 개요 API 서버를 개발할 때 반복적으로 등장하는 공통 처리 패턴들이 있다. 응답 포맷을 통일하지 않으면 클라이언트가 엔드포인트마다 다른 파싱 로직을 작성해야 하고, 예외 처리가 분산되면 일관성을 유지하기 어렵다. 이 글에서는 실무에서 바로 적용할 수 있는 공통 처리 구조를 코드 레벨로 정리한다. 주제 내용 공통 응답 포맷 ApiResponse&...
1. 개요 스프링의 어노테이션은 단순한 마커가 아니다. 각 어노테이션이 어떤 메커니즘으로 동작하는지 이해하면 문제가 생겼을 때 원인을 빠르게 찾을 수 있다. 주제 내용 핵심 어노테이션 내부 동작 어노테이션 처리 메커니즘 두 가지 방식 @Transactional 전파, 격리, 롤백, 주의사항 빈 스코프 Singleton, Prototype, Reques...
1. 개요 HTTP 요청이 스프링 부트 애플리케이션에 도달했을 때, 내부에서 어떤 컴포넌트들이 어떤 순서로 실행되는지를 코드 레벨에서 정리한다. 컴포넌트 역할 내장 Tomcat TCP 연결 수락, HTTP 파싱 Filter Chain 서블릿 레벨 공통 처리 (인코딩, CORS, 보안 토큰) DispatcherServlet 프론트 컨트롤러 — 요청 위임...
1. 개요 스프링 부트를 처음 배울 때 가장 먼저 마주치는 개념들이 있다. IoC, DI, AOP, Bean. 이 개념들이 어떻게 연결되고 내부적으로 어떻게 동작하는지를 코드 레벨에서 정리한다. 파트 내용 스프링 vs 스프링 부트 두 프레임워크의 관계와 차이 IoC 컨테이너 ApplicationContext 계층 구조 Bean 등록 컴포넌트 스캔, @...
Spring Boot 애플리케이션을 만들다 보면 @Configuration, @Value, @ConfigurationProperties 등 설정 관련 어노테이션이 한가득 등장한다. 각각이 무슨 역할인지, 언제 어떤 것을 써야 하는지, 그리고 실제로 값이 주입되는 시점이 언제인지 정리한다. 1. 개요 📌 핵심 원칙 Spring Boot의 설정 시스템은 ...
1. Servlet 스프링을 이해하려면 서블릿 컨테이너와 스프링 내의 스프링 컨테이너에 대해 알고 있어야 한다. 스프링 컨테이너와 서블릿 컨테이너에서 더 세부적으로 들어가, 서블릿이라는 개념에 대해 이해한 후에 점진적으로 넓혀가보자. 📌 서블릿이란? 우선, 서블릿이란 웹 서버나 애플리케이션 서버에서 실행되는 자바 프로그램으로, 웹 서버로부터 HTTP ...