Search

Spring 에서 Form, Request, Response의 표현이 각각의 Domain상에서 무엇을 의미하는 것인가요 ?

태그

Description

Vue와 Spring에서 /sign-up 과정중 의문점이 생겨서 질문드립니다.
Controller
@PostMapping("/sign-up") public Boolean signUp(@RequestBody MemberRegisterForm form) { // Spring에서 보내온 정보를 MemberRegisterForm에 담아둠 // Vue 에서는 Json 객체로 정보를 보내오니 그거를 Java에서 저장할수있게 변환작업 // @RequestBody가 다 해줌 log.info("signUp(): " + form); // 근데 form에서 다시 Request로 변환해서 넘겨주네 왜? return memberService.signUp(form.toMemberRegisterRequest()); }
Java
복사
MemberRegisterForm
@Getter @Setter @ToString @NoArgsConstructor public class MemberRegisterForm { private String email; private String password; private String nickName; private String city; private String street; private String addressDetail; private String zipcode; public MemberRegisterRequest toMemberRegisterRequest () { return new MemberRegisterRequest(email, password, nickName, city, street, addressDetail, zipcode); } }
Java
복사
MemberRegisterRequest
@Getter @ToString @RequiredArgsConstructor public class MemberRegisterRequest { final private String email; final private String password; final private String nickName; final private String city; final private String street; final private String addressDetail; final private String zipcode; public Member toMember () { return new Member( email, nickName, MemberProfile.of(city, street, addressDetail, zipcode) ); } }
Java
복사
제가 이해한 과정이라면 Vue에서 보내온 정보를 Form에 저장을 하고 그걸 다시 Request로 바꿔 주는 것 같은데 form 과 request 클래스의 차이라면 마지막 라인에 생성자 차이밖에 없는 것 같은데 혹시 클래스마다 하는 기능을 나눠주기 위해서 하시는 건가요? 만약 그런 이유라고 하신다면 저희의 모든 Controller 들은 * Vue에서 정보를 받을 때는 Form * 받아온 정보를 작업을 할 때는 Request * 작업을 완료하고 정보를 전달할때는 Response
이렇게 구성이 되야 하나요?

Try

Solution

네 맞습니다.
Form은 양식
Request는 받은 양식을 기반으로 어떤 요청인지 살피는 것
Response는 위 절차를 거쳐서 돌려주는 응답
가만 보니까 최근 굉장히 정신이 없어서 이슈가 밀렸는데 같은 질문이 있었군요.