SpringMVCでModelとViewを用いたリダイレクトの実装方法

Spring MVCではModelAndViewオブジェクトでリダイレクトを実現できます。

ModelAndViewオブジェクトを使用したリダイレクトをする手順は、以下の通りです。

  1. ModelAndView
ModelAndView modelAndView = new ModelAndView("redirect:/redirectUrl");
  1. フラッシュ属性を追加する
modelAndView.addFlashAttribute("key", "value");
  1. ModelAndView
return modelAndView;

ネイティブな日本語で以下のように言い換えるとよいです。

完全なサンプルコードは次のとおりです。

@Controller
public class MyController {
@RequestMapping("/redirect")
public ModelAndView redirect() {
ModelAndView modelAndView = new ModelAndView("redirect:/redirectUrl");
modelAndView.addFlashAttribute("key", "value");
return modelAndView;
}
@RequestMapping("/redirectUrl")
public ModelAndView redirectUrl(@ModelAttribute("key") String value) {
ModelAndView modelAndView = new ModelAndView("redirectPage");
modelAndView.addObject("value", value);
return modelAndView;
}
}

上記の例では、redirect関数がredirectUrl関数をリダイレクトする。redirectUrl関数はリダイレクトの要求を受け取ると、セッションに登録されたデータを回収し、redirectPageビューに引き渡す。

bannerAds