Spring Boot 2.0 WebMvcConfigurerAdapter过时以及新坑

在Spring Boot 2.0后用自己的的配置类继承WebMvcConfigurerAdapter时,idea提示这个类已经过时了,如下图

Spring Boot 2.0 WebMvcConfigurerAdapter过时以及新坑

嫌弃横线,网上搜索解决办法,发现大多是说继承WebMvcConfigurationSupport来代替 ,但是一旦继承WebMvcConfigurationSupport后就会出现新的问题,会发现Spring Boot的WebMvc自动配置失效,具体表现比如访问不到静态资源(js,css等)了,这是因为WebMvc的自动配置都在WebMvcAutoConfiguration类中,但是类中有这个注解@ConditionalOnMissingBean({WebMvcConfigurationSupport.class}),意思是一旦在容器中检测到WebMvcConfigurationSupport这个类,WebMvcAutoConfiguration类中的配置都不生效。所以一旦我们自己写的配置类继承了WebMvcConfigurationSupport,相当于容器中已经有了WebMvcConfigurationSupport,所以默认配置都不会生效,都得自己在配置文件中配置。

Spring Boot 2.0 WebMvcConfigurerAdapter过时以及新坑

建议和解决办法:

建议自己写的配置类实现WebMvcConfigurer接口,这个接口的方法都加了jdk1.8的 default方法修饰,不强制实现所有的方法,可以根据实际实现相关的方法。

Spring Boot 2.0 WebMvcConfigurerAdapter过时以及新坑


--------------------- 
作者:天气不坏 
来源:CSDN 
原文:https://blog.csdn.net/qq_35299712/article/details/80061532 
版权声明:本文为博主原创文章,转载请附上博文链接!