Ato*_*her 4 java spring spring-mvc
我在MVC Controller班上创建了两个测试方法.在第一种方法中,Model它作为参数传递,在第二种方法中,我直接实例化它.在这两种方法中,我向Model实例添加了一个属性:
@RequestMapping("/test-modelParam")
public String testMethod1(Model model) {
model.addAttribute("testname", "testvalue");
return "/testview";
}
@RequestMapping("/test-modelInstantiatedExplicitly")
public ModelAndView testMethod2() {
ModelAndView mav = new ModelAndView("/testview");
mav.addObject("testname", "testvalue");
return mav;
}
Run Code Online (Sandbox Code Playgroud)
在两种情况下都会正确填充视图.
这两种方法有什么区别吗?如果是这样,在哪里使用一个而不是另一个?
最终没有任何区别,一切都将ModelAndView最终落到最后.
当使用Model或ModelMap作为方法参数时,它将预先填充一些值
@ModelAttribute注释方法的结果@SessionAttribute可供控制器使用的简而言之,它是可用于该方法的预先填充的模型.
将Model始终创建并合并添加/用创建一个ModelAndView.
| 归档时间: |
|
| 查看次数: |
2336 次 |
| 最近记录: |