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