我正在构建一个Spring MVC应用程序,只是想知道有关建模和视图的约定是什么。
返回ModelAndView还是仅将视图名称作为字符串返回更好?
示例
public ModelAndView showInformation(){
ModelAndView myMV= new ModelAndView("display-information");
myMV.addObject("info",myObject);
return myMV;
}
OR
public String showInformation(Model theModel){
theModel.addAttribute("info",myObject);
return "display-information";
}
我认为,使用ModelAndView可以使您的意图更加清晰,但是与仅返回字符串相比,它涉及更多的设置。
答案 0 :(得分:0)
ModelAndView是模型(数据)+视图(视图名称)。视图名称是字符串,因为它正在由TemplateViewResolver处理。因此,如果选择返回String(视图名称)并使用Modal处理数据,则没有任何区别。实际上,返回的字符串是在以后添加到Spring中的视图,因此更为高级。但是我更喜欢ModelAndView而不是返回字符串。原因是