Category

Spring 14

Spring Boot 공통 처리 패턴(예외처리, 공통 응답, 검증, MDC)

1. 개요 API 서버를 개발할 때 반복적으로 등장하는 공통 처리 패턴들이 있다. 응답 포맷을 통일하지 않으면 클라이언트가 엔드포인트마다 다른 파싱 로직을 작성해야 하고, 예외 처리가 분산되면 일관성을 유지하기 어렵다. 이 글에서는 실무에서 바로 적용할 수 있는 공통 처리 구조를 코드 레벨로 정리한다. 주제 내용 공통 응답 포맷 ApiResponse&...

Spring Boot 어노테이션 & 빈 관리 (@Transactional, 스코프, 커스텀 어노테이션, BeanPostProcessor)

1. 개요 스프링의 어노테이션은 단순한 마커가 아니다. 각 어노테이션이 어떤 메커니즘으로 동작하는지 이해하면 문제가 생겼을 때 원인을 빠르게 찾을 수 있다. 주제 내용 핵심 어노테이션 내부 동작 어노테이션 처리 메커니즘 두 가지 방식 @Transactional 전파, 격리, 롤백, 주의사항 빈 스코프 Singleton, Prototype, Reques...

Spring Boot 요청 라이프사이클(Filter, Interceptor, DispatcherServlet, ArgumentResolver)

1. 개요 HTTP 요청이 스프링 부트 애플리케이션에 도달했을 때, 내부에서 어떤 컴포넌트들이 어떤 순서로 실행되는지를 코드 레벨에서 정리한다. 컴포넌트 역할 내장 Tomcat TCP 연결 수락, HTTP 파싱 Filter Chain 서블릿 레벨 공통 처리 (인코딩, CORS, 보안 토큰) DispatcherServlet 프론트 컨트롤러 — 요청 위임...

스프링 클라우드 기반 MSA 구성 - Service Registry

1. 개요 MSA에서 서비스는 언제든 새 인스턴스가 추가되거나 기존 인스턴스가 내려갈 수 있다. 스케일 아웃(Scale Out)이 일어나면 동일 서비스의 IP가 여러 개가 된다. 이 동적인 환경에서 클라이언트가 어떤 IP로 요청을 보내야 하는지 어떻게 알 수 있을까? 이 문제를 해결하는 것이 Service Registry다. 모든 서비스 인스턴스가 자...

Servlet 개념과 동작 방식 정리

1. Servlet 스프링을 이해하려면 서블릿 컨테이너와 스프링 내의 스프링 컨테이너에 대해 알고 있어야 한다. 스프링 컨테이너와 서블릿 컨테이너에서 더 세부적으로 들어가, 서블릿이라는 개념에 대해 이해한 후에 점진적으로 넓혀가보자. 📌 서블릿이란? 우선, 서블릿이란 웹 서버나 애플리케이션 서버에서 실행되는 자바 프로그램으로, 웹 서버로부터 HTTP ...