작성
·
328
0
강사님 아래 다른 분들이 올려주신 질문이랑 강사님의 답변을 봤는데도 이해가 가지 않아서 질문을 올립니다.. @ModelAttribute를 붙이면 model.addAttribute의 효과를 얻을 수 있는 것이라는 말씀은 이해가 가는데 보통 @PostMapping에서는 model 객체를 사용하지 않았던거 같은데 updateItem 함수에서는 왜 사용이 되는지랑 아래 캡쳐화면 보시면
@PostMapping("/items/new")
public String create(BookForm form) {
Book book = new Book();
book.setName(form.getName());
book.setPrice(form.getPrice());
book.setStockQuantity(form.getStockQuantity());
book.setAuthor(form.getAuthor());
book.setIsbn(form.getIsbn());
itemService.saveItem(book);
return "redirect:/items";
}
create 함수도 @PostMapping이면서 redirect:/items로 리턴이 되고 BookForm 객체변수명이 form 인데 왜 여기서는 @ModelAttribute가 안붙는지도 궁금합니다. 그리고 @ModelAttribute가 생략을 해도 되는건지도 궁금합니다.
요약해서 질문 드리면
1. @PostMapping에서는 보통 model 객체를 사용하지 않았던거 같은데 updateItem 함수에서는 왜 사용이 되나요?
2. create함수에서는 왜 @ModelAttribute가 안붙는건가요?
3. @ModelAttribute를 생략을 해도 되는건가요?