Spring MVC 핸들러 메소드 RedirectAttributes

Spring Web MVC

백기선님의 강의인 Spring Web MVC 강의를 듣고 공부한 내용을 정리한 글

RedirectAttributes

RedirectAttributes는 리다이렉트할 때 기본적으로 모델에 들어있는 primitive type은 URI에 자동으로 쿼리파라미터로 추가가 된다.

그런데 이 기능이 스프링 부트에서는 비활성화 되어 있다.

만약 리다이렉트할 때 모델 중 특정한 값들만 전송하고 싶은 경우가 있을 수 있다.

이때는 Model 대신에 RedirectAttributes를 사용하면 된다.

RedirectAttributes에 명시한 값들만 리다이렉트할 때 URI에 전달이 된다.

받는 쪽은 @PathVariable로 하나씩 받아도 좋고, 객체에 받고 싶은 경우라면 @ModelAttribute 복합 객체로 받아도 된다.

다만 유의할 점은 @ModelAttribute를 받는 쪽에서 , @SessionAttributes에서 설정한 이름과 같은 이름으로 설정하면 안된다.

왜냐하면 @SessionAttributes에서 해당하는 값을 찾아보려고 시도할 수도 있기 때문이다.

그래서 이 경우 @ModelAttribute의 이름을 별도로 설정해서 바인딩할 수 있다.

Reference

인프런 백기선님의 스프링 Web MVC



© 2022. by minkuk

Powered by minkuk