본문 바로가기

분류 전체보기57

@RequestBodyAdvice로 Spring API 데이터 전처리와 후처리 완벽히 관리하기 개요최근 프로젝트에서 JSON 형식의 데이터를 처리하는 API를 개발하게 되었는데, 데이터가 요청 본문(@RequestBody)으로 전달되는 상황을 자주 접하게 되었다. 대부분의 경우 Spring MVC의 기본적인 데이터 바인딩으로 충분했지만, 특정 요청 본문에 대해 데이터를 전처리하거나 예외 상황을 세밀하게 제어해야 하는 요구사항이 생겼다. 이때 유용하게 활용할 수 있는 기능이 바로 @RequestBodyAdvice였다. @RequestBodyAdvice란?@RequestBodyAdvice는 Spring에서 제공하는 인터페이스로, @RequestBody에 의해 바인딩되는 요청 데이터를 전처리하거나 후처리할 수 있는 기능을 제공한다. 특정 컨트롤러에 들어오는 요청 데이터를 한 곳에서 전처리 및 후처리할 .. 2024. 11. 5.
스프링부트 @ConfigurationProperties 매핑 오류(null) 얼마 전, 개인 프로젝트 진행 중 계정 관련 설정값을 application.yml 파일에 넣어둔 뒤 자바 객체로 받아와 사용하려고 한 적이 있었다. @Value 보다는 @ConfigurationProperties로 받아오면 객체형태로 받아올 수 있기 때문에 해당 방법을 통해 설정값을 받아오려고 했는데, 해당 값을 참조할 때마다 계속해서 NPE가 발생했다. 오늘은 해당 이슈에 대한 내용을 공유하려고 한다. 문제 상황이슈의 원인을 공유하기 전에 먼저, 어떤 상황에서 발생했는지를 공유하려고 한다. 나는 아래와 같이 yml 파일에 계정 정보 리스트를 넣어두었다.property: accounts: - name: test1 password: pw1 - name: test2 passwo.. 2024. 10. 15.
[티스토리 수익신청기 2] 방치되었던 티스토리 블로그 애드센스 재수 성공 후기 지난번 포스팅에서 방치되었던 티스토리 블로그를 애드센스에 등록 후 수익 신청을 했으나 반려당한 내용을 소개했었다. 2024.09.27 - [블로그 관리] - [티스토리 수익신청기 1] 방치되었던 티스토리 블로그 애드센스 수익신청 해보기 [티스토리 수익신청기 1] 방치되었던 티스토리 블로그 애드센스 수익신청 해보기2~3년 전쯤 티스토리 블로그를 만들어놓고 개발 관련 공부한 내용을 조금씩 올려놓거나, 개발 스터디하면서 정리한 내용들을 아카이빙 하는 형태로 사용하고 있었다. 당시 글이 많지 않고 조회joon2974.tistory.com 이 전글에서도 소개했듯이 너무 오랜 기간 방치했기 때문에 반려될 것을 예상하고는 있었으나, 이렇게 하루도 되지 않은 시간에 빠르게 그리고 이유도 상세히 알려주지 않고 반려당할 .. 2024. 10. 13.
자바 디자인 패턴(Design Pattern) 개요개발자로서 자바로 코딩을 하다 보면, 효율적이고 유지보수하기 쉬운 코드를 작성하는 것이 중요하다. 그 과정에서 자주 등장하는 것이 디자인 패턴(Design Pattern)이다. 처음에는 디자인 패턴이란 용어가 생소하게 느껴질 수 있지만, 개발 환경에서 마주치는 반복적인 문제들을 해결하는 데 큰 도움이 된다. 이번 글에서는 자바의 디자인 패턴에 대한 기본 개념을 쉽게 풀어 설명하려 한다. 디자인 패턴을 이해하고 나면 코드 작성과 구조화에 훨씬 자신감이 생길 것이다.  디자인 패턴이란 무엇인가? 디자인 패턴은 소프트웨어 개발에서 반복적으로 발생하는 문제를 해결하기 위한 일반화된 해결책이다. 디자인 패턴을 사용하면 코드의 재사용성이 높아지고, 유지보수가 쉬워지며, 다른 개발자와 협업할 때도 일관성을 유지할.. 2024. 10. 6.