Post로 저장한 후에, Redirect를 통해 상품상세로 보내버리는것이다. 그러면 마지막에 호출한게 Redirect이기때문에 새로고침을 해도 아무 문제가 생기지 않는다.
return "redirect:/basic/items/" + item.getId();
이런식으로 Redirect를 해주면 Post처리 후 itemid의 상세페이지로 redirect 된다.
@PostMapping("/add")
public String addItemV6(Item item, RedirectAttributes redirectAttributes) {
Item savedItem = itemRepository.save(item);
redirectAttributes.addAttribute("itemId", savedItem.getId());
redirectAttributes.addAttribute("status", true);
return "redirect:/basic/items/{itemId}";
RedirectAttribute에 ItemId Attribute를 넣어주고, 동시에 Status를 줄 수 있다.
이 Status를 통해서 상세 페이지뷰에서 status에 따라 출력을 하게 만들 수 있다 .
<h2 th:if="${param.status}" th:text="'저장 완료!'"></h2>