微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

java – 如何使用Spring MVC 3从控制器中获取模型中的对象?

我有一个控制器,它有一个方法来处理传入的GET数据,在模型中存储一些东西,然后重定向到另一个处理这些对象的页面.

我似乎找不到任何好的方法来将第一个方法中存储的对象从模型中取出,以便在第二个方法中使用.我怎样才能做到这一点?

这是控制器的顶部:

@Controller
@RequestMapping("/reviews")
@SessionAttributes({"review","externalReview"})
public class ReviewController {
    // [SNIP]
}

这是将我追随的对象添加到模型中的代码

@RequestMapping(value="/new",params="UName",method=RequestMethod.GET)
public String newFormFromExternal(@modelattribute("externalReview") ExternalReview externalReview,Model model) throws IncompleteExternalException {
    // Convert the inbound external
    Review fromExternal = ExternalReviewUtil.reviewFromExternalReview(externalReview,externalDAO);

    // Add the externalReview to the session so we can look to see if we got a reviewee on the way in
    model.addAttribute("externalReview",externalReview);

    model.addAttribute("review",fromExternal);

    return "redirect:/reviews/newFromExternal";
}
最佳答案
你很幸运.

如果您正在使用或有能力更新到新发布的Spring 3.1,则可以使用新范围的Flash变量.

http://static.springsource.org/spring/docs/3.1.0.RC1/spring-framework-reference/html/mvc.html#mvc-flash-attributes

如果你不能使用3.1,你可能自己实现解决方案.基本上,您希望捕获重定向中所需的模型对象,放入会话中,并在检索后将其删除,以防止会话膨胀.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐