Java spring如何将参数注入控制器方法

Java spring如何将参数注入控制器方法,java,spring,Java,Spring,如您所知,Spring将HttpServletRequest和Locale注入到方法中。我想知道 窗帘后面是怎么做的?我的猜测是,后面有一个数据转换系统在工作 它获取http请求头和主体数据,并将它们填充到给定的适当类中 在编码员的论证中。我说得对吗?是的,你说得对。简言之,应用程序中只有一个入口点(可能有多个入口点),它路由传入流量,将传入数据作为参数传递给方法。这称为前控制器模式 Spring的DispatcherServlet是前端控制器模式的实现。Spring中的Spring引用如下所示

如您所知,Spring将
HttpServletRequest
Locale
注入到方法中。我想知道 窗帘后面是怎么做的?我的猜测是,后面有一个数据转换系统在工作 它获取http请求头和主体数据,并将它们填充到给定的适当类中
在编码员的论证中。我说得对吗?

是的,你说得对。简言之,应用程序中只有一个入口点(可能有多个入口点),它路由传入流量,将传入数据作为参数传递给方法。这称为前控制器模式


Spring的DispatcherServlet是前端控制器模式的实现。Spring中的Spring引用如下所示,模式列在列表中。

使用Spring MVC时,有多个部件移动以解决映射
HandlerMapping
和执行
HandlerAdapter
的问题

扫描每个
@Controller
以查找
@RequestMapping
注释的方法,这些方法根据
@RequestMapping
注释中可用的元数据映射到URL,这是由类完成的

当请求传入时,特定方法与传入请求匹配。此选定的方法被传递给引用所有方法参数的。方法参数的实际处理留给不同的实现(您也可以实现自己的实现)

方法的返回值也会发生同样的情况,尽管它被委托给了一个

public ModelAndView loginPage(HttpServletRequest request, Locale locale) {}