반응형
2. Book List
@GetMapping("/api/v1/book")
public ResponseEntity<?> getBook() {
BookListRespDto bookListRespDto = bookService.bookList();
return new ResponseEntity<>(CMRespDto.builder().code(1).msg("BookList成功").body(bookListRespDto).build(),
HttpStatus.OK); // 200 = OK , saveした、BODYデータを一緒に戻り値に上げる
}
먼저 @GetMapping // 은 이 URL을 넣게 되면 값을 반환 해준다. (특별히 값을 넣지 않아도)
BookList는 등록과 같은 게 많으므로 넘어 가겠습니다.!!
3. Book Search
//3. book search
@GetMapping("/api/v1/book/{id}")
public ResponseEntity<?> searchBook(@PathVariable Long id) {
BookRespDto bookRespDto = bookService.booksSearch(id);
return new ResponseEntity<>(CMRespDto.builder().code(1).msg("BookSearch成功").body(bookRespDto).build(),
HttpStatus.OK);
}
여기도 Get이지만 URL Path가 마지막에 {id} 를 가지고 있습니다. 이것은 id로 값을 받기 때문이다.
@PathVariable // 이것은 방금 말한 것처럼 URL Path에서 오는 값을 말한다. 이번엔 id하나 이기 때문에 Long id를 지정하였다.
4. Book Delete
//4. book delete
@DeleteMapping("/api/v1/book/{id}")
public ResponseEntity<?> deleteBook(@PathVariable Long id) {
bookService.bookDelete(id);
return new ResponseEntity<>(CMRespDto.builder().code(1).msg("BookDelete成功").body(null).build(),
HttpStatus.OK);
}
BookDelete도 특별한 것은 없으므로 패스 하겠습니다.!
5. Book Update
//5. book Update
@PutMapping("/api/v1/book/{id}")
public ResponseEntity<?> updateBook(@PathVariable Long id, @RequestBody @Valid BookSaveReqDto bookSaveReqDto,
BindingResult bindingResult) {
if(bindingResult.hasErrors()) {
Map<String, String> errorMap = new HashMap<>();
for (FieldError fe : bindingResult.getFieldErrors()) {
errorMap.put(fe.getField(), fe.getDefaultMessage());
}
throw new RuntimeException(errorMap.toString());
}
BookRespDto bookRespDto = bookService.bookUpdate(id, bookSaveReqDto);
return new ResponseEntity<>(CMRespDto.builder().code(1).msg("BookUpdate成功").body(bookRespDto).build(),
HttpStatus.OK);
}
마지막으로 BookUpdate 이기 때문에 PutMapping을 사용 ..
그 외에는 특별한 것이 없으므로 여기서 끝내겠습니다. 다음은 Controller Junit Test로 공부 하도록 하겠습니다.
반응형
'개발 > Junit' 카테고리의 다른 글
⑩Junit Controller Test bookList, Search, delete, update Test (0) | 2022.10.23 |
---|---|
⑨Junit Controller Test 초기설정 및 BookSave Test (0) | 2022.10.22 |
⑦Junit Controller 초기설정 및 책 등록, 책 리스트 보기 (0) | 2022.10.22 |
⑥Service Junit 테스트 - 4 검색 수정 junit테스트 (0) | 2022.10.20 |
⑤Service Junit 테스트 - 3 등록과 리스트 junit테스트 (0) | 2022.10.19 |
댓글