개발/Spring
addAttribute VS addFlashAttribute
lusida0131
2022. 7. 26. 19:51
728x90
RedirectAttributes에서 addAttribute와 addFlashAttribute 차이가 있습니다.
1. addAttribute
addAttribute는 보통 해당 페이지로 리다이렉트를 할 때 값을 넘겨주는 용도로 사용한다.
addAttribute를 사용하면 URL 뒤에 붙게돼서 addFlashAttribute와는 달리 값이 유지가 됩니다.
위 사진과 같이 URL에 result의 값이 전달됩니다.
2. addFlashAttribute
addFlashAttribute를 사용해서 리다이렉트를 실행하면
addFlashAttribute로 전달한 result는 URL에 존재하지 않는 것을 확인할 수 있다.
즉, addAttribute는 URL에 붙어서 값이 전달되어 유지가 되지만 addFlashAttribute는 일회성으로 URL에 붙지 않고 세션 후 재지정 요청이 들어오면 값은 사라지게 됩니다. 즉 addFlashAttribute는 휘발성 성질을 가지고 있습니다. 성공 여부를 가리기 위해 임시적으로 값을 전달할 때 addFlashAttribute를 이용하면 됩니다.
728x90