springmvchandlerAdapter和handlerMapping类在什么时候被初始化

本文探讨了SpringMVC中`@EnableWebMvc`注解的作用,以及如何通过它和`WebMvcConfigurerAdapter`实现类来初始化`handlerMapping`和`handlerAdapter`。详细解析了`RequestMappingHandlerAdapter`、`SimpleControllerHandlerAdapter`、`HttpRequestHandlerAdapter`、`RequestMappingHandlerMapping`和`BeanNameUrlHandlerMapping`这五个关键组件的初始化过程,并阐述了它们在处理不同类型的控制器时的角色。同时,提到了`RequestMappingHandlerMapping`在初始化阶段对所有控制器进行URL和方法映射的处理,以及`BeanNameUrlHandlerMapping`如何在`ApplicationContextAwareProcessor`的后置处理器中完成控制器解析。
摘要由CSDN通过智能技术生成

前面博客中springmvc学习一初始化源码
记录了handlerMapping在初始化的时候,会解析当前bean中url和handlerMethod的映射关系,但是有一个点忽略了,那就是handlerMapping和handlerAdapter自身是在什么被初始化的

@EnableWebMvc

这个注解是Java快捷配置mvc的,在使用该注解之后,再添加一个WebMvcConfigurerAdapter的实现类,即可

@EnableWebMvc会通过@Import注入一个bean:DelegatingWebMvcConfiguration
DelegatingWebMvcConfiguration是WebMvcConfigurationSupport 的子类
在这里插入图片描述

在WebMvcConfigurationSupport类中,通过@Bean的形式,把RequestMappingHandlerAdapter、SimpleControllerHandlerAdapter、HttpRequestHandlerAdapter、RequestMappingHandlerMapping、BeanNameUrlHandlerMapping 这五个bean注入到了spring容器中

在springmvc项目中,如果我们不使用@EnableWebMvc注解,那就需要自己去继承WebMvcConfigurationSupport,然后把自己实现的类,注

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值