gpt4 book ai didi

java - 如何使用 Spring MVC 3 从 Controller 中的模型中获取对象?

转载 作者:搜寻专家 更新时间:2023-10-31 20:15:20 25 4
gpt4 key购买 nike

我有一个 Controller ,它有一个方法可以处理传入的 GET 数据,将一些东西存储在 model 中,然后重定向到另一个处理这些对象的页面。

我似乎找不到任何好的方法来将存储在第一种方法中的对象从模型中取出,以便在第二种方法中使用。我该怎么做?

这是 Controller 的顶部:

@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,您可能可以自己实现解决方案。本质上,您想要捕获重定向中需要出现的模型对象,放入 session 中,并在检索到后将其删除,以防止 session 膨胀。

关于java - 如何使用 Spring MVC 3 从 Controller 中的模型中获取对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7389291/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com