在弹簧mvc中重定向后从控制器传递参数的方法是什么?
2022-09-01 05:44:32
如果我用 mycontroller 方法编写:
return "redirect:url";
哪些参数将传递到url(可能是控制器方法或jsp页面)?
如果我用 mycontroller 方法编写:
return "redirect:url";
哪些参数将传递到url(可能是控制器方法或jsp页面)?
使用 ,您可以将几乎任何数据传递到重定向 URL:RedirectAttributes
@RequestMapping(value="/someURL", method=GET)
public String yourMethod(RedirectAttributes redirectAttributes)
{
...
redirectAttributes.addAttribute("rd", "rdValue");
redirectAttributes.addFlashAttribute("fa", faValue);
return "redirect:/someOtherURL";
}
当您用于添加属性时,这将最终出现在目标重定向 URL 中。这些属性用于构造请求参数,客户端(浏览器)将向 具有这些参数的新请求。这样,您只能使用 String 或基元作为重定向属性。addAttribute
redirect URL
当您使用 时,这些属性会在重定向之前临时保存(通常在会话中),并且在重定向后可供请求使用并立即删除。使用的优点是,您可以将任何对象添加为flash属性(因为它存储在会话中)。addFlashAttribute
flashAttributes