클라이언트에서 PostMan 등을 사용하여,
[수정]하고 싶은 엔티티의 [식별자]를 통해 해당 엔티티를 Rest API 방법으로 [수정]이 가능하다.
PUT : 같은 것을 2번 이상 수정하도록 요청을 날려도, 더 이상 SQL문이 날라가지 않음. (=멱등하다)
https://jbluke.tistory.com/19(PUT Method에 대해서는 이 사이트를 참조)
12. HTTP METHOD - PUT, PATCH, DELETE
jbluke.tistory.com
여기서는 members/[3]의 [3]이 리소스의 위치가 된다.(PUT Method 에서는 클라이언트가 반드시 [식별자] 등의 리소스를
특정하는 무언가가 있어야 한다.( 식별자가 아니더라도, 특정 URI도 괜찮음 )
@PutMapping("/api/v2/members/{id}") // [회원 수정] Rest API
public UpdateMemberResponse updateMemberV2(@PathVariable("id") Long id, @RequestBody @Valid UpdateMemberRequest request){
memberService.update(id,request.getName()); // [수정] 전략은 무조건 [dirty checking] 전략 사용
// 매개변수 id는 [기존 식별자]이다.
// 고로, 함부로 임의의 객체를 만들어서, 그 객체에 [기존 식별자]를 가지게 하여
// [준영속] 엔티티로 만들어 버려서, [dirth checking] 사용이 불가능하도록 만들면 안된다.
Member findMember = memberService.findOne(id);
return new UpdateMemberResponse(findMember.getId(), findMember.getName());
}
Rest API를 호출하여 [수정]이 완료됨.