ModelAndView和ModelMap有什么区别?

2022-09-03 00:14:47

只是春季3中的新名称吗?ModelMapModelAndView

Spring 3 中的功能是否发生了变化?

在 Spring 3 应用中考虑此代码,使用 :ModelMap

 @RequestMapping(value = "/order", method = RequestMethod.GET)
 public final String setup(final ModelMap model)
 {
  model.addAttribute(ORDER, new Order());
  return "setup";
 }

我想知道在较旧的Spring应用程序中,这里的等效用途是什么?它只需要从 到 进行名称更改即可在 Spring 2.5 中运行?ModelAndViewModelMapModelAndView


答案 1

ModelAndView顾名思义,它包含模型视图的名称。,在合约中,仅包含有关模型的信息。ModelMap

你的例子会被写成(在“旧”春天)作为

 public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response)
 {
  return new ModelAndView("setup", ORDER, new Order());
 }

答案 2

@coder247 如果我错了,有人会纠正我,但你不需要返回模型地图。将属性添加到模型映射中,只需返回一个字符串,即视图名称。

这是一篇优秀的文章,解释了如何做到这一点以及更多...http://www.mkyong.com/spring-mvc/spring-mvc-form-handling-annotation-example/


推荐