json관련 jackson 에서 지원하는 유용한 어노테이션 기능들을 살펴보자

jacskon annotation 에 대해 정리된 원문을 요약한다. + 추가

Read + Write Annotations

@JsonIgnore

@JsonIgnoreProperties

@JsonIgnoreProperties

@JsonIgnoreType

@JsonBackReference

@JsonManagedReference

@JsonAutoDetect

@JsonAutoDetect

@JsonView

Read Annotations (Json Object to Java Object : Deserialize)

@JsonSetter

@JsonAnySetter

@JsonCreator

@JacksonInject

@JsonDeserialize

Write Annotations (Java Object to Json Object : Serialize)

@JsonInclude

@JsonGetter

@JsonAnyGetter

@JsonPropertyOrder

@JsonRawValue

@JsonValue

@JsonSerialize

Jackson 에서 다양한 어노테이션을 지원하기 때문에
적재적소에 잘 사용한다면 보다 간결한 코딩이 가능할것으로 생각된다.

물론, 무분별한 가독성을 해치거나 복잡도를 증가시키는 사용은 피해야겠다.

JsonSerialize/JsonDeserialize 어노테이션을 살펴보니 Type 도 target으로 설정되어있다.
해당 날짜타입의 클래스도 Jackson 레벨에서 특정패턴의 날짜형식으로 처리가 가능할것으로 보인다.
(Spring Converter와 별개로 확인을 위해)

추가

@JsonIdentityReference

@JsonAppend

@JsonNaming

@JsonPropertyDescription

@JsonPOJOBuilder

@JsonTypeId

@JsonTypeIdResolver

@JacksonAnnotationsInside

아래 참고

https://www.baeldung.com/jackson-annotations

Written by

엘디는 사랑입니다.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store