10.1. 책 삭제 기능 개요
책 상세 화면에서 책 삭제 버튼을 눌렀을 경우 책이 삭제되는 기능을 만들어 보겠습니다.
- 스프링 부트 하루만에 배우기
- · 2024. 7. 30.
9.7. 책 수정 기능 확인하기
책 수정 페이지에 접속한 후 데이터를 수정하고 저장 버튼을 눌러 볼께요.바꾼 값대로 책 상세 화면이 나오는지 확인합니다.
- 스프링 부트 하루만에 배우기
- · 2024. 7. 29.
책 목록을 보여주기 위한 기능을 만들어 보겠습니다./book/list에 접속하면 책 목록이 보여집니다.책 내용은 최신순으로 정렬됩니다.1페이지에 3개의 책 정보가 나오며, 페이징이 가능합니다.책 제목으로 검색이 가능합니다.
우리는 책 상세 화면에서 상세 버튼을 "POST" 방식으로, bookId를 매개변수로 해서 서버에 전송하도록 코드를 작성했었죠. 삭제도 동일한 방식으로 처리합니다. src/main/resources > templates.book > read.html 상세 화면에서 삭제 버튼을 눌렀을 때의 정보를 처리하도록 컨트롤러 메소드를 작성합니다.src/main/java > com.yse.dev.book > BookController.java@PostMapping("/book/delete") public String delete(Integer bookId) throws NoSuchElementException{ this.bookService.delete(bookId); ..
책 정보를 삭제하는 기능은 "책 정보를 읽어서 지우는" 과정입니다.src/main/java > com.yse.dev.book.service > BookService.javapublic void delete(Integer bookId) throws NoSuchElementException { Book book = this.bookRepository.findById(bookId).orElseThrow(); this.bookRepository.delete(book); }
책 상세 화면에서 책 삭제 버튼을 눌렀을 경우 책이 삭제되는 기능을 만들어 보겠습니다.
책 수정 페이지에 접속한 후 데이터를 수정하고 저장 버튼을 눌러 볼께요.바꾼 값대로 책 상세 화면이 나오는지 확인합니다.
BookController 클래스에 수정 요청을 처리할 메소드를 추가합니다.src/main/java > com.yse.dev.book > BookController.java@PostMapping("/book/edit/{bookId}") public ModelAndView update( @Validated BookEditDTO bookEditDTO, Errors errors) { if (errors.hasErrors()) { String errorMessage = errors .getFieldErrors() .stream() .map(x -> x.get..