ModelAndView的返回方式
@RequestMapping(value = "/list", method = RequestMethod.GET)
public ModelAndView list(
@UserAuth UserAuth user,
ModelAndView mav) {
if (!user.isAuthenticated()) {
mav.setViewName("redirect:http://www.test.com/login.jsp");
return mav;
}
mav.setViewName("list");
mav.addObject("articles", listService.getLists());
return mav;
}
返回String的方式
@RequestMapping(value = "/list", method = RequestMethod.GET)
public String list(
@UserAuth UserAuth user,
Model model) {
if (!user.isAuthenticated()) {
return "redirect:http://www.test.com/login.jsp";
}
model.addAttribute("articles", listService.getLists());
return "list";
}
这些工作原理相同。哪个是更好的方法?和有什么区别?
没有更好的办法了。两者都是完全有效的。您选择使用哪一种取决于哪一种更适合您的应用程序 - Spring 允许您使用任何一种方式。
从历史上看,这两种方法来自不同版本的 Spring。这ModelAndView
方法是 Spring 2.0 之前从控制器返回模型和视图信息的主要方式。现在您可以结合Model
参数和String
返回值,但旧方法仍然有效。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)