redirect重定向时带参数的问题
最近在做SSM项目模块的扩充时,由于某一个函数是带参数,且参数不能省略不能为空的函数
@RequestMapping("/showProfile")
public ModelAndView showProfile(int id,HttpSession session){
ModelAndView mv = new ModelAndView();
User user = userService.findById(id);
mv.addObject("user",user);
mv.setViewName("pages/user-profile");
return mv;
}
这就导致重定向时,函数接受到了空值而报错
经过查询一定的资料,发现可用 redirectAttributes.addFlashAttribute()方法实现参数的传递
@RequestMapping("changeinfo")
public String changeinfo(User user, RedirectAttributes redirectAttributes){
System.out.println(user);
userService.update(user);
redirectAttributes.addAttribute("id", user.getId());
return "redirect:showProfile";
}
表单提交前:
进行数据的修改:
表单提交后重定向后显示的页面: