본문 바로가기
728x90

spring5

@RequestBodyAdvice로 Spring API 데이터 전처리와 후처리 완벽히 관리하기 개요최근 프로젝트에서 JSON 형식의 데이터를 처리하는 API를 개발하게 되었는데, 데이터가 요청 본문(@RequestBody)으로 전달되는 상황을 자주 접하게 되었다. 대부분의 경우 Spring MVC의 기본적인 데이터 바인딩으로 충분했지만, 특정 요청 본문에 대해 데이터를 전처리하거나 예외 상황을 세밀하게 제어해야 하는 요구사항이 생겼다. 이때 유용하게 활용할 수 있는 기능이 바로 @RequestBodyAdvice였다. @RequestBodyAdvice란?@RequestBodyAdvice는 Spring에서 제공하는 인터페이스로, @RequestBody에 의해 바인딩되는 요청 데이터를 전처리하거나 후처리할 수 있는 기능을 제공한다. 특정 컨트롤러에 들어오는 요청 데이터를 한 곳에서 전처리 및 후처리할 .. 2024. 11. 5.
Spring Boot Auto Configuration 작동 원리 개요개발을 하다 보면 Spring Boot를 사용할 때 대부분의 설정이 자동으로 되어 있어 편리하다는 점을 경험하게 된다. 하지만 "어떻게 이런 설정들이 자동으로 이루어질까?🙄"라는 궁금증을 해결하기 위해 Spring Boot의 Auto Configuration을 깊이 있게 이해하게 되었다. 이 글을 통해 Spring Boot의 Auto Configuration이 어떻게 작동하는지, 그리고 이를 활용하여 개발을 더욱 효율적으로 할 수 있는 방법을 알아보려고 한다.  Auto Configuration이란? Spring Boot의 Auto Configuration은 애플리케이션이 필요한 설정을 자동으로 적용해주는 기능이다. 덕분에 개발자는 모든 설정을 수동으로 지정할 필요 없이, 최소한의 설정만으로도 애플.. 2024. 9. 28.
프로메테우스란? 개요 프로메테우스는 그리스 로마 신화에서 사람들에게 불을 가져다 준 신으로 알려져 있는데 사람들은 이 불을 통해 음식을 익혀먹고, 밤에 보지 못했던 것들을 볼 수 있게 되었다. 모니터링 툴 Prometheus는 불을 통해 무언가를 잘 관찰할 수 있게 해 준 신의 이름을 차용해 지어졌다고 한다. 사전적인 의미로 정의하면 프로메테우스는 SoundCloud에서 만든 오픈소스 시스템 모니터링 및 경고 툴킷으로 요약할 수 있다. 아래 그림은 프로메테우스 공식 홈페이지에 있는 특징들인데, 큰 특징들만 추려 정리하자면 아래와 같다. 메트릭을 수집하여 시계열 데이터 저장 수집한 데이터의 시각화 (with Grafana) PromQL을 통한 강력한 쿼리 AlertManager를 통한 쉽고 정확한 알림 다양한 클라이언트 .. 2023. 3. 1.
[스프링 핵심원리 기본]스프링 컨테이너와 스프링 빈 스프링 컨테이너와 스프링 빈 이전 강의까지에서는 객체지향에 대한 전반적인 개념에서 시작하여 간단한 예제를 통해 할인 시스템을 만들어 보았다. 예제를 통해 객체지향적 사고를 배울 수 있었고, 이제부터는 본격적으로 스프링의 원리에 대해서 정리한다. 스프링 컨테이너 생성 @Configuration public class AppConfig { @Bean public MemberService memberService() { return new MemberServiceImpl(memberRepository()); } @Bean public MemberRepository memberRepository() { return new MemoryMemberRepository(); } ... } public static vo.. 2022. 1. 15.