您的位置:首页 > 编程语言 > Java开发

Spring MVC重定向

2015-07-15 15:32 471 查看
测试成功。带参数的重定向。

模拟情况:添加完信息后跳转到一个新页面,显示刚新增的信息。

测试成功的几种方式。

1.拼接url

addUser

@RequestMapping("/addUser")
public ModelAndView addUser(HttpServletRequest request,HttpServletResponse response){
String username = request.getParameter("username");
String password = request.getParameter("password");
String sex = request.getParameter("sex");
String note = request.getParameter("note");
System.out.println(username);
userService.addUser(username, password, Byte.parseByte(sex), note);
int id = userService.getId(username, password);
return new ModelAndView("redirect:/user/showUser?id="+id);
}


showUser

@RequestMapping("/showUser")
public ModelAndView toIndex(HttpServletRequest request){
ModelAndView modelAndView = new ModelAndView();
//传到的jsp页面
modelAndView.setViewName("showUser");
int id = Integer.parseInt(request.getParameter("id"));
System.out.println(id);
User user = userService.getUser(id);
System.out.println(user);
modelAndView.addObject("user", user);
return modelAndView;
}


2.利用RedirectAttributes类。

redirectAttributes.addFlashAttribute("id", id);


这里用addFlashAttribute(key, value)方法。

传递的页面用

@ModelAttribute("id")int id


取值。

拼接得到的url相当于 return "redirect:/user/showUser?key=value"

感觉第二个比较好用。

不需要传递参数值的话这样就可以了。

return new ModelAndView("redirect:/user/showUser");


         
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: