RSS 봄
팔로우
Spring에서 Jackson 3 지원 소개
Spring Framework는 인기 있는 JVM JSON 라이브러리의 최신 버전인 Jackson 3에 대한 지원을 Spring Boot 4 및 관련 프로젝트에 도입하고 있습니다. 이 중요한 업데이트는 Jackson 3.0.0 GA 릴리스에 이어 과거 Jackson 통합 개선 사항을 기반으로 합니다. Spring 및 Jackson 팀은 Jackson 3 릴리스 후보 단계 동안 긴밀하게 협력하여 여러 개선 사항을 도출했습니다. 여기에는 Jackson 2와 3의 공존 허용, JDK 17 기준, JSON 뷰에 대한 기본값 조정, null 안전성 및 비차단 파서 기능 향상이 포함됩니다. Spring Boot 4는 두 Jackson 버전 모두에 대한 종속성 관리를 제공하지만 Jackson 3만 자동 구성하여 기본값으로 설정합니다. 애플리케이션 마이그레이션은 Jackson 3 채택을 권장하지만, 일부 수동 구성을 통해 Jackson 2를 일시적으로 사용할 수 있습니다. 주요 마이그레이션 단계에는 패키지 이름을 `com.fasterxml.jackson`에서 `tools.jackson`으로 업데이트하고 Jackson 3의 새로운 기본 설정(예: 알파벳순 속성 정렬 및 날짜 직렬화 형식)에 적응하는 것이 포함됩니다. Jackson 3의 불변 `JsonMapper` 도입은 Jackson 2의 가변 `ObjectMapper`를 대체하여 `JsonMapper.Builder`를 사용하여 구성을 단순화합니다. 더 이상 사용되지 않는 `MappingJackson2HttpMessageConverter`는 직렬화 힌트를 직접 사용하는 더 강력한 `JacksonJsonHttpMessageConverter`로 대체되어 `MappingJacksonValue`와 같은 래퍼의 필요성을 없앱니다. Spring Security 7.0은 Jackson 3도 지원하여 기본 전역 타이핑을 비활성화하고 `PolymorphicTypeValidator`를 도입하여 안전성을 향상시킵니다. Spring Data 4.0은 모듈 전반에 걸쳐 완전한 Jackson 3 지원을 제공하지만, Spring Data REST 및 Spring HATEOAS와 같은 일부 모듈은 Jackson 3로의 완전한 마이그레이션이 필요합니다.