@RequestMapping(value = "/xx", method = RequestMethod.POST)
public String xxx(RedirectAttributes redirectAttributes) throws Exception {
redirectAttributes.addFlashAttribute("xx", "xx!");//使用addFlashAttribute,参数不会出现在url地址栏中
return "redirect:/yy";
}
要是知道原理就很简单了:redirectAttributes.addFlashAttribute()是把参数放在session中 ,跳转之后再从session中移除。在重定向的页面是可以用el取数据的,但是在重定向到的controller(action)怎么获取呢?也是有方法的:
方法一:利用httpServletRequest
public String test2(HttpServletRequest request)
{
Map
System.out.println(map.get("test").toString());
return "/test/hello";
}
方法二:利用Spring提供的标签@ModelAttribute
public String test2(@ModelAttribute("test") String str)
{
System.out.println(str);
return "/test/hello";
}
部分代码copy自网上,懒得自己写了
@RequestMapping(value = "/xx", method = RequestMethod.POST)
public String xxx(RedirectAttributes redirectAttributes) throws Exception {
redirectAttributes.addFlashAttribute("xx", "xx!");//使用addFlashAttribute,参数不会出现在url地址栏中
return "redirect:/yy";
}
你要是知道原理就很简单了:redirectAttributes.addFlashAttribute()是把参数放在session中 ,跳转之后再从session中移除。在重定向的页面是可以用el取数据的,但是在重定向到的controller(action)怎么获取呢?也是有方法的:
方法一:利用httpServletRequest
public String test2(HttpServletRequest request)
{
Map
System.out.println(map.get("test").toString());
return "/test/hello";
}
方法二:利用Spring提供的标签@ModelAttribute
public String test2(@ModelAttribute("test") String str)
{
System.out.println(str);
return "/test/hello";
}
部分代码copy自网上,懒得自己写了