-
RedirectAttributes란java/스프링공부 2020. 6. 25. 12:04728x90
컨트롤에서 RedirecAttributes라는게 있다
예시)
Model model 객체는 이해가 되는데
RedirectAttributes rttr 객체를 만들고
그걸 return "redirect:/board/list" 여기서 redirect:는 무엇인지 이해가 안된다.
[해석]
우선은 왜 쓰는지에서부터 생각을 해보았는데
service는
@Inject BoardService service;
service.delete(boardVO.getBno()); //delete메소드를 이용해서 그 해당 글을 삭제 할텐데
scri객체는 검색어 객체
즉, getPage 현재 페이지 getPerPageNum끝페이지 getSearchType 검색타입 getKeyword 검색어
삭제 했을때 list페이지로 돌아가는데 이때 내가 검색했던 내용이나 그 페이지 그대로 유지하고 싶을때
저렇게 RedirectAttributes를 쓴다.
저렇게 rttr.addAttribute함으로써
return "redirect:/board/list" 하게 된다면
localhost/board/list?board/list?page=1&perPageNum=10&searchType=&keyword=
이런식으로 검색했던 내용을 그대로 url에 유지할 수 있다.
그리고,
addAttribute와 addFlashAttribute의 차이점
rttr.addAttribute로 전달한 값은 url뒤에 붙으며,
리프레시해도 데이터가 유지된다.rttr.addFlashAttribute로 전달한 값은 url뒤에 붙지 않는다.
일회성이라 리프레시할 경우 데이터가 소멸한다.
또한 2개이상 쓸 경우, 데이터는 소멸한다.
따라서 맵을 이용하여 한번에 값전달해야한다.728x90'java > 스프링공부' 카테고리의 다른 글
스프링에서 ajax요청시 주의사항 (0) 2020.08.18 스프링에서 restapi 만들때 주의할점 (0) 2020.07.10 스프링에서 컨트롤러에서 비동기처리 (0) 2020.07.09 스프링에서 jsp랑 서블릿 역할 (0) 2020.07.09 스프링에서 controller에서 return페이지가 없는 void함수 (0) 2020.06.28