inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[개념은 호옹~, 실습 빡] 스프링 부트, 입문!

19 HTTP와 RestController(REST API, 어떻게 만들죠?)

19강 @PatchMapping

799

아에이오우

작성한 질문수 4

0

선생님 안녀하세요!
강의보던 도중 헷갈리는 부분이 있어서 질문남깁니다.

수정을 할 때
1. 수정용 엔티티를 생성
2. 대상 엔티티를 조회
순서인데

이때
1. 수정용 엔티티를 생성 -> 받아온 새로운 데이터 엔티티
2. 대상 엔티티를 조회 -> 기존에 저장되어있던 엔티티

이렇게 이해해도 맞는걸까요?

// PATCH
    @PatchMapping("/api/articles/{id}")
    public ResponseEntity<Article> update(@PathVariable Long id,
                                          @RequestBody ArticleForm dto){
        // 1. 수정 용 엔티티 생성
        Article article = dto.toEntity();

        // 2. 대상 엔티티를 조회
        Article target = articleRepository.findById(id).orElse(null);

        // 3. 잘못된 요청 처리(대상이 없거나, id가 달느 경우)
        if (target == null || id != article.getId()){
            // 400, 잘못된 요청 응답!
           return ResponseEntity.status(HttpStatus.BAD_REQUEST).body(null);
        }

        // 4. 업데이트 및 정상응답(200)
        target.patch(article);
        Article updated = articleRepository.save(target);
        return ResponseEntity.status(HttpStatus.OK).body(updated);
    }

spring-boot

답변 1

1

홍팍

오게이~🙆‍♂️

0

아에이오우

우왕 감사합니다 ㅎ

 

23강 댓글 생성 메소드 오류

0

82

2

15.14 강 에러 문제 질문

0

56

1

21강 자율 과제중 update

0

120

2

28강 DB mysql연동 관련 질문

0

282

1

27강 관련 질문

0

199

1

22강 관련질문

0

310

2

21강 create테스트 질문

0

357

1

9강 질문 있습니다

0

282

1

로그창에 내용이 출력이 안됩니다.

0

367

1

index()함수 질문있습니다.

0

361

3

수정완료를 눌렀을때 첫번째 데이터는 전송이 안되고 다시 수정완료 버튼을 눌러야 데이터가 전송 됩니다.

0

475

1

강의와 책 질문

0

435

1

20강 질문있습니다.

0

398

1

20강에서 Article create 부분

0

289

1

16강 질문있습니다.

0

264

1

mustache의 article의 정의가 뭔가요?

0

339

2

17강 Unique index or primary key violation

1

1829

2

8강 에러 질문있습니다.

0

269

1

15강 DB연결

0

342

1

추상클래스를 사용 할 수있을까요?

0

241

1

22강 과제 질문

0

374

1

22강 질문입니다.

0

369

1

19강 create POST 500 에러

0

455

1

19강 JSON create 메서드 질문이여!!

1

541

1