[java] Jackson의 주요 어노테이션: @JsonFormat

Jackson 라이브러리를 사용하여 JSON 데이터를 다룰 때, 날짜 형식을 지정하고 싶을 때가 있습니다. 이때, @JsonFormat 어노테이션을 사용하여 날짜 형식을 지정할 수 있습니다.

@JsonFormat 어노테이션

Jackson의 @JsonFormat 어노테이션은 Java 객체의 필드에 적용하여 해당 필드가 JSON으로 변환될 때의 형식을 지정할 수 있습니다. 주로 날짜나 시간을 다룰 때 활용됩니다.

예를 들어, 다음은 LocalDate 타입의 필드를 포함하는 Java 클래스의 예제입니다.

import com.fasterxml.jackson.annotation.JsonFormat;
import java.time.LocalDate;

public class MyObject {
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd")
    private LocalDate date;
    
    // 생성자, 게터, 세터 등...
}

위의 예제에서 @JsonFormat 어노테이션을 사용하여 LocalDate 타입의 date 필드의 형식을 “yyyy-MM-dd”로 지정했습니다.

@JsonFormat 어노테이션 속성

@JsonFormat 어노테이션을 활용할 때, 다양한 속성을 사용할 수 있습니다. 주요 속성은 다음과 같습니다.

위의 예제에서는 shape 속성을 사용하여 JSON으로 변환될 때 문자열로 지정하고, pattern 속성을 사용하여 “yyyy-MM-dd” 형식으로 지정하였습니다.

이렇게 @JsonFormat 어노테이션을 활용하여 JSON 데이터의 날짜 형식을 지정할 수 있습니다.

더 자세한 내용은 Jackson 공식 문서를 참고하시기 바랍니다.