응답 본문으로 반환되는 컴포지트 객체에 대한 Serializitoin시 Unwrapped를 해야하는 이유에 대한 질문입니다.
안녕하세요.
응답 본문에 전달되는 Unwrapped된 JSON 문자열에 대해 궁금한 사항이 두 가지 있어 질문 글을 남깁니다.
"Spring HATEOS 적용" 강의 내용 중 응답 본문에 Link 정보를 넣어주기 위해 ResourceSupport 또는 Resource<T>를 상속받는 EventResource 클래스를 생성하고, 이를 사용하여 Event에 대한 링크 정보를 생성할 수 있었습니다.
EventController의 createEvent() 메소드에서 응답 본문에 EventResource 타입의 데이터를 반환하는 모습을 볼 수 있었는데요.(ObjectMapper(+BeanSerializer)을 이용한 JSON 문자열 데이터)
이때 EventResource는 컴포지트 객체인 Event 타입의 필드를 가지고 있기 때문에 BeanSerializer가 자동으로 Event 타입의 필드명으로 JSON 문자열을 감싸고, 그 안에 필드 목록을 JSON 데이터로써 넣어주게 되는 것일까요?
이전 수업까지 EventController의 createEvent()에서는 EventDto 객체를 ModelMapper을 사용하여 Event 객체로 변환하고, 응답 본문에 넣어주었는데,
이 경우 Event 객체의 필드 목록에는 컴포지트 객체가 없기 때문에 특정한 필드명으로 감싼 형태의 JSON 문자열이 나오지 않았다고 이해하면 될까요?
또한, JSON 문자열에 대해 Unwrapped를 하느냐, 마느냐에 대한 결정은 개발자의 선택이고, REST API에서 권장사항은 별도로 없는 것인가요?
긴 글 읽어주셔서 감사드리며, 조언 부탁드립니다.
[참고사항]
Spring HATEOS 1.1.0 버전을 사용하고 있기에
ResourceSupprot ==> RepresentaionModel
Resource<T> ==> EntityModel<T>
로 사용하였습니다.
답변 1
Spring 시큐리티 관련해서 WebSecurityConfigurationAdapter
0
73
1
junit5 사용하시는 분들
0
88
1
자바 빈 스펙을 준수하는지 체크하는 테스트
0
236
2
REST API 개발 중 비즈니스 로직 적용 부분의 JSON 에러
0
243
1
스프링 부트 3버전에서의 실습
0
190
1
java.lang.AssertionError: Status
0
532
2
spring doc 관련 파일 생성 관련 배포 관련 질문 드립니다.
0
287
1
섹션2 201응답받기 부분 테스트 404에러 질문입니다
0
741
1
강의 자료가 404입니다 확인 부탁 드려요!
0
477
1
연동 DB문의
0
358
1
이벤트 Repository강의 중 Event 클래스에 private Integer Id; 위치 질문
0
505
1
(Mac) postgressql 관련하여 port kill 해도 다시 살아나는 경우
0
380
0
maven으로 생성한 docs파일(index.html)에서의 not found 오류 질문
0
621
1
테스트 오류 질문드립니다.
0
512
1
docs 요청값이 반영이 안되네요... (해결)
-1
394
1
psql 적용 후 에러
0
818
2
mvn package 시 다음과 같은 에러가 나시면
0
765
2
Event에 Account manager를 추가했으면 문서화 필요
0
274
1
2년 훨씬 전 부터 Restlet-> Talend API 로 바뀌었습니다~
1
473
1
asciidoc 추가 스니펫 에러 해결법
0
400
1
_links 는 현재 fieldWithPath 를 해주지 않아도 됩니다.
0
424
3
깃랩 처음 사용자를 위한 index.adoc raw 보는 법
0
332
1
eclipse 쓰시는 분을 위한 maven-resources-plugin 팁
0
333
1
부트 + jupiter 인 경우 설정법
0
342
1





