使用Spring MVC的原始初学者 - 说, Spring MVC的哪个组件将对象传递给在控制器对象中使用@RequestMapping注释的方法?
例如,
@RequestMapping
public String test(Model model) {
model.addAttribute("testMessage", "My Test");
return "test";
}
模特来自哪里? 我的方法可以接受我想要的任何参数吗? 是否有一些直观的Spring框架依赖注入,我在这里根本就不理解?
答案 0 :(得分:0)
这是Spring依赖注入的全部内容。
Spring注入Model model
反对你的控制器方法。 Model model
只是Map <String, Object>
存储属性。使用model
将属性添加到model.addAttribute("testMessage", "My Test")
对象后,会向Map
添加一个条目。您可以从您感兴趣的视图中访问此地图。因此,您可以在视图中使用此地图来访问您从控制器添加的属性(即testMessage
)
您可以在这些控制器方法中传递其他一些内容,Spring会自动解析并注入适当的对象/值。您可以使用以下内容:
ModelMap modelMap
@RequestParam
@PathVariable
@ModelAttribute
BindingResult bindingResult
然后继续。当你在控制器方法上传递这些东西时,Spring知道如何解决它们并将它们注入到你的方法中。 这可能会让您更好地了解spring mvc:http://docs.spring.io/spring/docs/current/spring-framework-reference/html/mvc.html