我需要从 spring Controller 内部调用另一个 @RequestMapping。现在我可以通过
轻松做到 return "redirect:anotherMapping.htm";
但是我还需要在表单对象中传递值。
@RequestMapping("/anotherMapping")
public ModelAndView addUser(final @ModelAttribute("userLogin") UserLogin
userLogin, final HttpServletRequest request){
我需要在 UserLogin 中传递 userId。如果我写 return "redirect:anotherMapping.htm";,那么它会调用此 Controller 方法,但表单对象为 null。
请帮忙。
最佳答案
您可以使用 RedirectAttributes。
在下面的示例中,当调用 foo 并重定向到 /bar
时,模型将包含 xyz=meow
属性。
@RequestMapping(..)
public String foo(RedirectAttributes redir) {
redir.addFlashAttribute("xyz", "meow");
return "redirect:/bar";
}
@RequestMapping("/bar")
public String bar(Model model) {
..
}
如果您发现这样做的时间太多,您也可能consider using @SessionAttributes
关于java - 如何从另一个传递表单对象和调用的 Action 方法调用spring Controller @RequestMapping,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22703501/