PUT 메소드로 만든다.
등록이랑 수정 요청과 응답을 별도로 또 만들었다.
DTO 클래스를 내부에 만드는 이유는?
어차피 컨트롤러 내부에서만 쓰기 때문에 내부에 만들었다.
MemberService
@Transactional
public void update(Long id, String name) {
Member member = memberRepository.findOne(id);
member.setName(name);
}
@PutMapping("/api/v2/member")
public UpdateMemberResponse updateMEmberV2(
@PathVariable("id") Long id,
@RequestBody @Valid UpdateMemberRequest request) {
memberService.update(id, request.getName());
Member findMember = memberService.findOne(id);
return new UpdateMemberResponse(findMember.getId(), findMember.getName());
}
팁