Die Art der Rückgabe von 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;
}
Die Art der Rückgabe 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";
}
Diese funktionieren gleich. Welcher Weg ist besser? und was ist der Unterschied?
spring-mvc
controller
Gentlejo
quelle
quelle
Ich möchte mir auch 2 Cent hinzufügen. Der zweite Ansatz ist eher auf Konventionen ausgerichtet, dh der Entwickler erwähnt explizit seine Ansicht, impliziert jedoch, dass die Rückgabezeichenfolge der Ansichtsname ist. Also weniger Codierung, lesbar und Standard. Viel besser als früher mit ModelAndView
quelle