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
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
투표를 진행하려고 합니다!
논의 및 투표: 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