SpringBoot复习:(33)WebMvcAutoconfiguration内部静态类WebMvcAutoConfigurationAdapter

WebMvcAutoconfiguration内部静态类WebMvcAutoConfigurationAdapter实现了WebMvcConfigurer接口,重写了一些方法,也就是默认对Spring Mvc进行了一些配置:
SpringBoot复习:(33)WebMvcAutoconfiguration内部静态类WebMvcAutoConfigurationAdapter_第1张图片
SpringBoot复习:(33)WebMvcAutoconfiguration内部静态类WebMvcAutoConfigurationAdapter_第2张图片
该静态类上有个**@Import**注解:
@Import(EnableWebMvcConfiguration.class)

SpringBoot复习:(33)WebMvcAutoconfiguration内部静态类WebMvcAutoConfigurationAdapter_第3张图片
它的父类DelegatingWebMvcConfiguration,
SpringBoot复习:(33)WebMvcAutoconfiguration内部静态类WebMvcAutoConfigurationAdapter_第4张图片
通过注入的方式,把容器中所有实现了WebMvcConfigurer的bean注入到configurers中,而this.configurers.addWebMvcConfigurers(configures)执行逻辑如下:
SpringBoot复习:(33)WebMvcAutoconfiguration内部静态类WebMvcAutoConfigurationAdapter_第5张图片
也就是把List传给WebMvcConfigurer的成员变量delegates.
当底层调用WebMvcConfigurerComposite的方法时,会遍历delegates进行调用:
SpringBoot复习:(33)WebMvcAutoconfiguration内部静态类WebMvcAutoConfigurationAdapter_第6张图片

你可能感兴趣的:(SpringBoot,spring,boot,后端,java)