1、SpringMVC ModelAndView跳转失效;
注意:ModelAndView包引入时是
org.springframework.web.servlet.ModelAndView
这个类
但是如若引入
org.springframework.web.portlet.ModelAndView
则会出现url为请求的url找不到页面404。而不是ModelAndView里面设置的View
2、重定向和转发(注意前面斜线的使用情况)
1)转发:
一种
//返回String;可以通过Model返回参数
model.addAttribute("user", user);
return "user/list";//user文件目录下面的list.jsp文件
二种
//返回ModelAndView
mv.addObject("user", user);//携带user参数对象返回
mv.setViewName("user/update");//user文件目录下面的update.jsp文件
return mv;
三种
//返回ModelAndView
mv.addObject("user", user);//携带user参数对象返回
mv.setViewName("forward:/loginForm");
2)重定向:
一种:
//返回String(加关键字redirect)
return "redirect:/user/selectUser";
二种:
//返回ModelAndView
mv.setViewName("redirect:/main");
//如若要携带参数:
//GET方式可以直接在地址后面加?id=1 参数传递
//RedirectAttributes方式,参数中传递过来;
//addFlashAttribute方法存储如下:
@RequestMapping(value="/user/deleteUserById")
public String deleteUser(@ModelAttribute User user,Integer currPage,RedirectAttributes mv) {
hrmService.removeUserById(user.getId());
mv.addFlashAttribute("user", user);
mv.addFlashAttribute("currPage", currPage);
return "redirect:/user/selectUser";
}