有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java@RequestMapping方法中的模型参数

目前我正在学习Spring,特别是SpringMVC部分,我偶然发现了一件事,我不太明白它是如何工作的

@RequestMapping("/foo")
public String foo(Model model){
    // code here
    return "foo";
}

上面用@RequestMapping注释的方法使用类Model接收参数,有时使用ModelAndView

我不理解的是Model参数来自何处,以及流如何来自使用ComponentScanInternalResourceViewResolverBean的spring配置类(如WebConfig.java)

我一直在寻找资料来源,但我没有发现任何对我有帮助的东西,甚至是文档,这让我第一次在这里问

一个直接的解释会很有帮助,或者如果有任何来源,可以把链接放在这里。 如果它来自文档,请说明它是哪个部分/部分,因为我可能会错过一两件事


共 (1) 个答案

  1. # 1 楼答案

    The method above annotated with @RequestMapping receive the parameter with class Model and sometimes ModelAndView.

    下面的帖子详细解释了ModelAndView和Model

    When to use ModelAndView vs Model in Spring?

    where the Model parameter comes from

    控制器通常负责准备带有数据的模型映射并选择视图名称,但也可以直接写入响应流并完成请求。视图名称解析可以通过文件扩展名或接受头内容类型协商、bean名称、属性文件甚至自定义ViewResolver实现进行高度配置。该模型(MVC中的M)是一个映射接口,允许对视图技术进行完全抽象。您可以直接与基于模板的呈现技术(如JSP、Velocity和Freemarker)集成,或者直接生成XML、JSON、Atom和许多其他类型的内容。模型映射被简单地转换成适当的格式,例如JSP请求属性、Velocity模板模型

    引用-http://docs.spring.io/spring/docs/current/spring-framework-reference/html/mvc.html#mvc-ann-arguments