[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으로 변환될 때의 형식을 지정합니다. 예를 들어,JsonFormat.Shape.STRING
은 문자열로 변환하라는 의미입니다.pattern
: 날짜나 시간의 형식을 지정합니다. 예를 들어, “yyyy-MM-dd” 혹은 “HH:mm:ss”와 같은 형식을 지정할 수 있습니다.
위의 예제에서는 shape
속성을 사용하여 JSON으로 변환될 때 문자열로 지정하고, pattern
속성을 사용하여 “yyyy-MM-dd” 형식으로 지정하였습니다.
이렇게 @JsonFormat
어노테이션을 활용하여 JSON 데이터의 날짜 형식을 지정할 수 있습니다.
더 자세한 내용은 Jackson 공식 문서를 참고하시기 바랍니다.