상세 컨텐츠

본문 제목

Spring - JsonObjectMapper - null제외

JAVA/WEB - Spring

by 개봉박살 2021. 4. 8. 14:58

본문


REST api를 작성하다보면 JSON타입을 자주 다룬다.

우리는 주로 자바에서 데이터를 클래스로 다루는데 VO혹은 Model이라 부른다.

이 데이터를 JSON타입으로 자동으로 변환해서 던져주는 일을 jackson라이브러리가 해준다.

그래서 Controller단에서 return해줄때 객체를 리턴해주면 알아서JSON으로 변환해서 response해준다.

이제 우리는 객체에 어떤데이터가 null값을 가진다면 json객체에 포함시키지 않게 처리할수있다.

당연히 우리의 Java는 이런 처리를 Annotation을 통해 사용한다.

import com.fasterxml.jackson.annotation.JsonInclude;
어노테이션을 임폴트하고 제외하고싶은 데이터위에 어노테이션을 써주면된다.

//객체 전체에 적용
@JsonInclude(JsonInclude.Include.NON_NULL)
public class UserProfile {
    private Integer num;
    private Integer gender;
    private Integer state;
    private Integer marketing_type;
    private Integer point;

public class UserProfile {
    //요소 하나에 적용
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private Integer num;
    private Integer gender;
    private Integer state;
    private Integer marketing_type;
    private Integer point;

참고로 기본데이터타입은 쓸수 없다. 기본형은 null값을 가질 수 없기 때문이다.

이만 뿅

관련글 더보기

댓글 영역