😎 서론
안녕하세요! 오늘은 스프링 부트에서 JSON 데이터를 최적화하는 간단한 방법에 대해 알려드리려 합니다. 웹 서비스에서 작은 최적화도 사용자 경험에 큰 변화를 가져올 수 있기에, 이를 잘 활용하면 많은 이점을 얻을 수 있습니다.
🤔 왜 null 값을 제거해야 하나요?
JSON 응답 데이터에서 null 값은 다음과 같은 문제점을 발생시킬 수 있습니다.
- 데이터크기: 불필요한 null 값은 전송되는 데이터의 크기를 불필요하게 증가시킵니다.
- 클라이언트 처리: 클라이언트에서는 null 값에 대한 추가적인 처리가 필요하게 됩니다.
Before
{
"id": 14,
"title": "제목",
"content": "내용",
"writer": "홍길동",
"created_id": null
}
🥸 Jackson 라이브러리로 Null 값 제거하기
Spring Boot에서는 Jackson 라이브러리를 활용하여 JSON 응답 데이터를 효과적으로 관리할 수 있습니다. 아래의 설정을 사용하면, null 값을 가진 필드는 JSON 응답에서 자동으로 제외됩니다.
package com.board.backend.config;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.databind.ObjectMapper;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class AppConfig {
@Bean
public ObjectMapper objectMapper() {
final ObjectMapper objectMapper = new ObjectMapper();
objectMapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);
return objectMapper;
}
}
적용 후의 결과 입니다.
After
{
"id": 14,
"title": "제목",
"content": "내용",
"writer": "홍길동"
}
🤠 마치며
JSON 내의 null 값을 제거하는 것은 간단한 절차처럼 보일 수 있지만, 이러한 작은 최적화가 서비스의 응답 시간 개선과 클라이언트의 처리 부담 감소에 큰 도움을 줍니다. 특히, 대용량 데이터를 다루는 서비스나 리소스가 제한된 모바일 환경에서는 이런 최적화가 더욱 중요합니다.
데이터를 깔끔하게 관리하고, 사용자에게 필요한 정보만을 효율적으로 전달하는 것은 좋은 웹 서비스의 기본입니다. 이 글을 통해 소개된 방법이 여러분의 서비스에 적용되어, 사용자 경험을 한 단계 더 향상시키는 데 도움이 되기를 바랍니다.
'💻 프로그래밍 > 🆂 Spring' 카테고리의 다른 글
Spring에서 잘못된 메시지 요청 핸들링하기 (0) | 2023.08.19 |
---|---|
Spring Boot 에서 응답 및 예외 처리 모델 구축하기 (0) | 2023.08.14 |
MyBatis XML Mapper 에서 Java 내부 클래스 참조하기 (0) | 2023.08.13 |