dev/spring45 Spring Boot 4 - Jackson JsonView 사용하기 개요Spring Boot 4에는 Jackson 라이브러리의 버전이 3으로 올라갔다. JsonView 어노테이션을 기존 2 버전에서도 사용가능한 기술이었지만 데이터의 일부만 직렬화할 수 있는 새로운 기능이 추가되어 해당 기능을 알아보도록 하자. JsonView가 필요한 경우JsonView는 예를 들어 사용자 API 서비스를 개발하고 있고, 각기 다른 데이터 요구사항을 가진 여러 클라이언트에 API를 제공해야 하는 경우가 있다고 생각해 보자. 각각 모바일 APP, Web, 운영툴 등 각각의 클라이언트는 사용자 API에서 필요한 필드가 모두 다를 것이다. 모바일 APP은 간단한 사용자 정보가 필요하고, 운영툴은 사용자의 모든 정보가 필요할 것이다. JsonView를 사용하지 않고 각각의 클라이언트의 요구사항에.. 2026. 1. 10. RestTestClient를 사용하여 Spring Rest API 테스트 작성하기 개요RestTestClient는 Spring Framework 7에서 새롭게 도입된 통합 테스트 도구로, Spring REST API를 손쉽게 테스트할 수 있게 해 준다. 기존에 MockMvc와 WebTestClient의 장점을 하나로 합쳐 단순하고 직관적인 API를 제공하여 쉽게 테스트를 작성할 수 있게 해 준다.이번 게시글에서는 RestTestClient의 각 상황에 맞는 사용법과 왜 사용해야 하는지에 대하여 알아보자. 자세한 사항은 아래 문서를 참고한다.공식 문서 : https://docs.spring.io/spring-framework/reference/testing/resttestclient.html RestTestClient를 사용해야 하는 이유는 무엇일까?모든 유형의 테스트를 위한 일관된 A.. 2026. 1. 5. Spring Boot 4 모듈화 개요Spring Boot 4.0.0이 2025.11.20 정식으로 출시(https://spring.io/blog/2025/11/20/spring-boot-4-0-0-available-now)되었고, 많은 변경사항 중 하나인 Modular Spring Boot 4에 대하여 알아보자 A Modular Spring Boot 4Spring Boot 4가 출시되고 큰 변경사항 중 하나는 바로 기존에 단일(monolithic) spring-boot-autoconfigure JAR 파일 대신, 기능을 더 작고 집중된 모듈로 분리하여 각각의 JAR 파일로 제공하는 것이다. 아래는 Spring Boot4와 Spring Boot 3의 spring-boot-autoconfigure JAR 파일에 패키지 구조를 보면 Spri.. 2025. 12. 11. Spring - Path Prefix 개요Spring을 사용하여 API를 개발할 때 여러 개의 Controller를 생성하고, @RequestMapping을 사용하여 각 Controller에 공통된 Prefix Path를(ex /api/v1.0/, ...) 설정하는 방법으로 API의 URL을 정의해 왔다. 이번 포스트에서는 Spring의 WebMvcConfigurer를 사용하여 원하는 Controller에 Path Prefix를 설정하는 방법을 알아본다. As-isWebMvcConfigurer를 사용하는 방법을 알아보기 전에 기존 프로젝트의 코드에서는 대부분 아래와 같이 개발하는 경우가 많았다.Controller에 @RequestMapping을 사용하여 상수로 정의한 API_PREFIX를 path 문자열 앞에 추가하여 API URL을 정의한.. 2025. 8. 18. Spring Framework 7.0.0 API Versioning 개요이번 포스팅에는 Spring Framework 7.0.0에 포함될 API Versioning 기능에 대해서 알아보자.Restful API로 클라이언트와 통신하는 서비스에서는 URI에 버전을 포함하여(ex /service/v1.0/users) API를 작성하고, API가 변경됨에 따라 API의 버전을 추가하거나 변경하는 전략을 사용해 왔다. Spring Framework 7.0.0에는 기존에 URI를 설정하던 @RequestMapping 어노테이션에 version 어트리뷰트를 추가하여 API Version을 관리하는 기능을 제공한다. API Versioning을 사용하는 이유하위 호환성 유지 (Backward Compatibility)점진적 마이그레이션 (Gradual Migration)API 진화 관.. 2025. 7. 31. Spring Framework 7.0 - Resilience Features (회복력 기능) 개요Spring Framework 7.0에는 Resilience(회복력) 기능이 spring-core에 추가되었다. 7.0 이전 Spring 개발팀은 Spring Retry 프로젝트(https://github.com/spring-projects/spring-retry)를 별도의 프로젝트로 제공했으나 Spring Framework 7.0 버전 출시에 맞춰 불필요한 기능을 정리하고 일부 API를 개선하여 spring-core 패키지로 추가했다.상세한 내용은 공식 문서를 참고한다.(https://docs.spring.io/spring/reference/7.0-SNAPSHOT/core/resilience.html) 이번 게시글에서는 Spring Framework 7.0에 포함된 Resilience Feature.. 2025. 7. 27. 이전 1 2 3 4 ··· 8 다음 728x90