Spring PRG(Post Redirect Get)

hoyong.eom·2023년 7월 18일
0

스프링

목록 보기
16/59
post-thumbnail

Spring

PRG

PRG는 Post Redirect Get 의 줄임말로서, 실무에서 자주 발생하는 문제를 해결하는 방식을 일컫는다고 한다.

즉, Post로 남겨두는게 아니라 Redirect으로 Get Method로 바꿔놓으라는 의미가 된다.

왜 Post로 남겨두면 안될까?

그 이유는 Post로 남겨놓을 경우, 지속적인 Post 요청이 발생해서 의도치않은 문제가 발생할 수 있기 때문이다.

이때는 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 매개변수를 활용하면 위와 같이 코딩이 가능하다. status는 요청 파라미터로 넘어가게 된다.

참고

해당 포스팅은 아래의 강의를 공부 후 개인적으로 정리한 내용입니다.

김영한님의 SpringMVC1-RedirectAttribute

1개의 댓글

comment-user-thumbnail
2023년 7월 18일

잘 읽었습니다. 좋은 정보 감사드립니다.

답글 달기