서론
JacksonAnnotation을 많은 클래스에 붙여야 할 때가 있다. 근데 우선 하나가 아니라 굉장히 번잡해보이고, 변경할 때 다같이 바꿔줘야하니 힘들고, 무엇보다 나열된 어노테이션만 봤을때 이게 왜 쓰여야하는 어노테이션인지 한번에 알기 힘들다.
처음에는 class에만 붙이면, nested class 에 자동 적용되는 그런 것이 있을까 검색해보다 없는거같아 포기하고, Custom annotation을 만들어서 해보려 했는데, 적용이 안되더라. 자바 알못이라 커스텀 어노테이션에 어노테이션 여러개 붙여두면 알아서 unwrap 될 줄 알고 그랬다. (이때까지 쓰던 annotation들이 unwrap을 해주던거지, 이건 아니더라.)
그래서 찾아보니 @JacksonAnnotationsInside
라는 어노테이션이 이 역할을 해주더라
본론
(Jackson Annotation wiki)[https://github.com/FasterXML/jackson-annotations/wiki/Jackson-Annotations#meta-annotations]
이 어노테이션에 대한 정보는 위키에 있다. 처음부터 위키 정독했으면 안 헷갈렸겠다. 위키에서도 딱 내가 원하는 용도에 쓸 수 있다고 하고 있다.
used to allow "annotation bundles", custom annotations that are annotated with Jackson annotations (why? to allow adding just a single annotation to represent set of multiple Jackson annotations)
아주 좋다.
결론
Jackson annotation을 custom annoation으로 묶어 쓸때는 @JacksonAnnotationsInside
을 붙여줘야 Jackson에서 잘 처리해준다.
끝
'#TIL' 카테고리의 다른 글
Apple Silicon M1/M2 맥북 Display Link 사용때, 디스플레이 초기화로 문제를 해결하는 법 (0) | 2023.01.03 |
---|---|
신비로운 C++의 세계 (feat. vector와 I64d) (0) | 2020.10.24 |
테이블간의 Cardinality와 객체 내의 Attribute간의 Cardinality? (0) | 2020.10.14 |
Flask + SQLAlchemy를 사용하며 배운것들을 정리 (0) | 2020.10.12 |
C++의 Rule of Zero (0) | 2020.10.08 |