클라이언트단과 서버단의 DTO 공유방식
안녕하세요 영한님!
만약에 실무에서 리액트와 스프링을 이용해서 클라이언트단과 서버단으로 나눠서 운영한다고 가정한다면, 클라이언트단과 서버단은 물리적으로 분리되어 있고 API로 데이터 요청과 응답을 주고받을 것이라 생각합니다.
근데 여기서 API를 주고 받기 위해서 클라이언트와 서버의 API 스펙을 매핑 해야하는데 클라이언트단 따로, 서버단 따로 클래스를 만들어서 관리하는 방식은 유지보수 측면에서 좋지 않다고 생각이 듭니다.
실제 실무에서는 어떤 방식으로 처리하는지 궁금합니다.
답변 2
2
안녕하세요. Young.K님
웹 애플리케이션의 경우 클라이언트는 자바스크립트를 사용하고 서버는 자바를 사용해서 서로 기술이 완전히 다르기 때문에 HTTP 스펙과 JSON 내용을 공유하고, 실제 구현은 자바 언어로 할 수도 있고, 자바스크립트, 파이썬 등등 다양하게 나누어서 구현된다고 이해하시면 됩니다.
결국 HTTP 스펙과 JSON 데이터를 어떻게 할 것인가에 대한 기준만 명확하다면, 이것을 실제 구현하는 부분은 각각 따로 관리하더라도 큰 어려움은 없습니다.
참고로 표준화된 메시지를 가지고 각각 구현을 generate하는 방법이 있는데 예를 들어서 구글의 프로토콜 버퍼 같은 기술이 있습니다.
감사합니다.
강의 관련 외 질문입니다.
0
62
2
SpringBoot4 + Hibernate7 모듈 등록 방법 공유
0
85
1
BeanCreationException
0
86
3
Update 후 UpdateMemberResponse 매핑할 때
0
46
1
트랜잭션을 사용 안 할 때 커넥션은 언제 가져오나요?
0
96
2
페이징 + 검색조건 관련해서 질문드립니다.
0
70
1
Query Dsl Q파일 질문입니다.
0
81
1
루트 쿼리라는것은
0
58
1
메서드를 분리하는 기준
0
61
1
findAllWithMemberDelivery 메서드 질문드립니다.
0
108
3
연관관계 매핑을 안 쓸 경우, 사용해야 하는 전략
0
83
2
fetch join과 영속화와 OSIV의 관계
0
83
2
Distinct 사용 전 결과에 대한 의문
0
112
2
레포지토리 계층에서의 트랜잭션에 대한 의문
0
55
1
영속성 컨텍스트 생명주기의 신기한 부분이 있습니다.
0
77
2
dto 필드 속 엔티티 여부
0
58
1
뷰템플릿 사용 시
0
76
2
Result 클래스 관련 질문
0
56
1
@PostConstruct 프록시 관련 질문드립니다
0
85
1
DTO 대신 Form 사용은 안되나요?
0
133
1
OSIV ON 상태일 때
0
94
1
fetch join VS fetch join 페이징 궁금증
0
178
2
양방향 연관관계 알아보는 법?
0
102
1
16강 17강 간단 정리 이게 맞을까요 ?
0
161
2





