Controller와 Service간의 requestDto를 구분하는 측면
724
작성한 질문수 41
충분히 공감가고 이해되는 내용입니다!
좋은 내용 설명해주셔서 감사합니다!
그렇다면 responseDto도 순수 서비스 응답과 ,
각 컨트롤러 별 응답으로 구분하는게 좋을까요?
답변 2
0
안녕하세요, khd1692 님! :)
잘 생각해보면, Response는 Request와 다르게 보통 서비스 레이어에서 정의하고, 이를 컨트롤러 레이어에서 받아서 사용하기 때문에 자연스럽게 계층이 분리되어 있는 상황입니다.
Request의 경우는 Bean validation를 하느라 일차적으로 컨트롤러 레이어 쪽에 만들기 때문에 계층 분리가 필요한 상황인 것이죠. ㅎㅎ
감사합니다. :)
0
안녕하세요, 인프런 AI 인턴이에요.
컨트롤러와 서비스 간의 requestDto 외에도 responseDto를 어떻게 구분할지에 대해 궁금하신 것 같아요.
보통 컨트롤러와 서비스 간의 통신에서는 requestDto를 사용하여 클라이언트로부터 전달받은 데이터를 서비스에 전달하고, 서비스는 이를 가공하거나 조작한 후 responseDto를 생성하여 클라이언트에게 응답하게 됩니다.
responseDto는 클라이언트로부터 요청을 받은 컨트롤러별로 응답 데이터를 구성하는 것이 일반적입니다. 이렇게 구분하는 이유는 클라이언트의 요청에 따라 서비스에서 생성되는 응답 데이터가 다를 수 있기 때문입니다. 예를 들어, 사용자가 회원가입을 요청한 경우 회원가입에 성공하면 성공 메시지와 함께 회원 정보를 응답으로 전달할 수 있고, 실패한 경우 실패 메시지를 응답으로 전달할 수 있습니다.
따라서, 컨트롤러와 서비스 간의 responseDto도 컨트롤러별로 구분하여 관리하는 것이 좋습니다. 이를 통해 클라이언트에게 적절한 응답을 제공할 수 있고, 어떤 컨트롤러가 어떤 응답을 반환하는지 파악하기도 쉽습니다.
그러나 이러한 구분은 필수적인 것은 아니며, 프로젝트의 복잡도나 팀의 개발 스타일에 따라 다를 수 있습니다. 따라서, 프로젝트의 요구사항과 개발 환경에 맞추어 적절한 구분 방법을 선택하면 됩니다.
더 좋은 방법을 제시해드릴 수 있도록 더 자세한 상황이나 예시를 알려주시면 더욱 도움이 될 것 같아요. 어떤 질문이든지 언제든지 물어보세요!
고맙습니다.
private 상수 테스트 관련 질문
0
83
1
void는 어떻게 테스트하나요..? void로 애초에 코딩하면 안되나요??
0
126
2
커버리지는 어떻게 활용하시는지 궁금합니다.
0
161
2
테스트 문서화 질문입니다
0
105
2
단위테스트 질문이 있습니다
0
96
2
컨트롤러는 모킹을 한 이유가 궁금합니다.
0
103
2
ERD 가장자리에 있는 도메인 테스트 질문
0
89
2
DTO 검증 필드에 대한 테스트 코드 작성은 어디까지?
0
135
2
OrderCreateRequest DTO에 대해서 궁금한점
0
102
2
고전파의 테스트 대역 사용 대상, 공유 의존성
0
156
2
계층 관련 질문이 있습니다.
0
139
3
'코틀린'에서는 빌더를 따로 쓰지 않는데, 이 때는 어떻게 test fixture를 만드시는지 궁금합니다
1
124
2
혹시 update 로직은 어떻게 테스트하나요? (@Setter?)
0
134
2
단위테스트와 통합테스트의 경계가 궁금합니다.
0
228
2
Service+Repository 통합테스트 관련 질문입니다.
0
150
2
OrderControllerDocsTest 작성 해봤는데요. 날짜 형식이 이상하게 나와요
0
185
2
test 용 .yml
0
90
2
throws Exception
0
80
2
카페키오스크 클래스 문의 ,,
0
89
2
Rest docs 문서용 테스트코드를 따로 작성해야 되나요?
0
174
2
테스트 코드에서 필요한 생성자
0
138
1
tearDown 순서
0
116
2
@Builder 생성자 private
0
136
2
@DisplayName gradle / intellJ
0
93
2





