您好我使用的是Spring MVC 4.0.2。在开发controller
方法时,我有点困惑。我可以使用两种不同的方法签名来实现相同的功能,如下所示。
1。
@RequestMapping(value = "/login", method = RequestMethod.GET)
public String login(ModelMap model)
{
model.addAttribute("user","Admin");
return "home";
}
2。
@RequestMapping(value = "/login", method = RequestMethod.GET)
public ModelAndView login()
{
ModelAndView model = new ModelAndView();
model.addObject("user","Admin");
model.setViewName("home");
return model;
}
现在混淆的是这两种方法有什么不同?我应该使用哪个?返回String
或ModelAndView
是否有任何优势/劣势?请帮忙。感谢。
答案 0 :(得分:1)
ModelAndView
包含模型和视图名称,而ModelMap
仅包含有关模型的信息。返回ModelAndView似乎更合适,在我看来更清晰。它还允许您在一种方法中指定多个视图,但我并没有真正看到它的用处。