作用:静态资源目录、请求路径前缀、webjars、欢迎页,以及请求路径(request)里的参数解析过程rest风格(设置隐藏参数 _m传递PUT、DELETE)、矩阵变量(分号)
request路径里参数有很多种形式,比如传统的 ?,以及后来的 rest风格。
行为:hiddenHttpMethodFilter(),
0.继承关系:有几个内部类(都是static型的)
1.WebMvcAutoConfiguration
行为:hiddenHttpMethodFilter(),应用rest风格(开启 _method)
2.内部类WebMvcAutoConfigurationAdapter
行为:configurePathMatch(),应用@MatrixVariable(通过里面的urlPathHelper除去 “移除分号后内容”)
3.内部类EnableWebMvcConfiguration
行为:addResourceHandler(),实现 静态资源目录+webjars
welcomePageHandlerMapping(),实现欢迎页
4.WebMvcConfigurer:接口
作用:接管和改变springboot的自动配置,自定义配置,增加自己想要的功能。比如参数解析器、转换器convert、静态资源处理等等
继承关系
属性无
行为:configurePathMatch()、addFormatters()、addArgumentResolvers()…..
configurePathMatch():和矩阵变量有关,设置 是否去除分号及其后内容的
addFormatters():添加类型转换器,用于解析自定义参数的。