스프링 MVC 하루만에 배우기 구판

06.04. 책 입력 기능 만들기 - 4

연서은 2024. 9. 20. 11:42

6.10. 책 입력 기능 컨트롤러 서비스 빈 추가

책 입력 기능 서비스를 호출하기 위해 서비스 빈을 추가한다. 클래스 선언 public class BookController { 바로 아래에 추가하면 된다.

src/main/java/sample/spring/yse/BookController.java

@Autowired
BookService bookService;

서비스를 호출하기 위해 BookService를 의존성을 주입한다. 이 때 BookService 인터페이스가 사용되었음을 주의하자.

6.11. 책 입력 기능 컨트롤러 메소드 추가

서비스를 이용해 책을 입력하는 컨트롤러 메소드를 만든다.

src/main/java/sample/spring/yse/BookController.java

@RequestMapping(value = "/create", method = RequestMethod.POST)
public ModelAndView createPost(@RequestParam Map<String, Object> map) {
    ModelAndView mav = new ModelAndView();

    String bookId = this.bookService.create(map);
    if (bookId == null) {
        mav.setViewName("redirect:/create");
    }else {
        mav.setViewName("redirect:/detail?bookId=" + bookId); 
    }  

    return mav;
}

브라우저에서 http://localhost:8080/create 에 접속해 실제로 데이터를 입력해 본다. 

 

아직 상세 페이지는 만들지 않았기 때문에 데이터가 입력되더라도 브라우저에서는 http 404 not found 오류가 난다. 정상이다. 


데이터 입력이 성공했는지 DBMS에서 확인해 본다. HeidiSQL에서 book 테이블을 열고 데이터 탭을 클릭해 입력한 데이터를 확인한다.