Core: Jackson > JSON 직렬화 시 null
필드를 제거하는 게 어떨까요?
#41
Closed
merge-simpson
started this conversation in
Polls
Replies: 4 comments 2 replies
-
디스커션 투표 만들면서 확인한 것
그 외 본문 작성은 이슈와 유사합니다. ( |
Beta Was this translation helpful? Give feedback.
1 reply
-
위 논의를 확인해 주시고, 혹시 아직 투표하지 않으신 분들은 투표 부탁드리겠습니다. @silberbullet |
Beta Was this translation helpful? Give feedback.
0 replies
-
❓ C안을 선택한 이유가 무엇일까요?
|
Beta Was this translation helpful? Give feedback.
1 reply
-
투표 종료 후 추가적인 코멘트로 오늘 회의에서 정리된 설명을 남기겠습니다. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
투표를 진행하려고 합니다!
논의 및 투표: JSON 직렬화 시
null
필드를 무시하기🗳️ 다음 제안과 함께 시작한 투표입니다.
JSON 직렬화에서
null
필드를 무시하는 것이 좋다고 생각합니다. (주로 응답 JSON)이로써 클라이언트는 자바스크립트에서
null
대신undefined
로 속성에 접근할 수 있으므로, 타입스크립트의 optional 특성에 잘 맞습니다.null
필드도 JSON에 포함하여 응답합니다.null
필드를 제외하기 위해, 기본 설정을 NON_NULL 필드만 포함하도록 속성값을 입력합니다.null
필드를 제외하기 위해, 필요하다면 각 필드에@JsonInclude(Include.NON_NULL)
애노테이션을 표기합니다.부연 설명
✍️ Jackson 라이브러리 사용 시 선택지 설명
🗳️ A안: Null 필드도 명시하기
혹시
null
필드를 명시하기를 원한다면 말씀해 주세요!헷갈린다면 프론트엔드 개발자분들과도 소통해 보는 것이 좋을 것 같습니다.
🗳️ B안: Jackson Configuration Properties 속성값
Jackson을 메시지 컨버터로 사용하고 있다면 다음 옵션을 추가할 수 있습니다.
(참고: 스프링에서 기본 메시지 컨버터는 Jackson으로 설정되어 있습니다.)
🗳️ C안: 대안 중 하나로,
@JsonInclude
애노테이션 사용👀
null
필드 포함 및 불포함 차이null
필드 포함JSON
타입스크립트 인터페이스
각종 optional 속성의 타입에 null을 함께 표기합니다.
null
필드 무시JSON
타입스크립트 인터페이스
각종 optional 속성의 타입에 null을 더 이상 명시하지 않습니다.
9 votes ·
Beta Was this translation helpful? Give feedback.
All reactions