18.0、springboot-扩展springMVC

18.0、springboot-扩展springMVC

  Springboot官方说如果你想扩展这个类你需要加上@Configuration这个注释,必须是webMvcConfigurer这个类,并且绝对不能加上@EnableWebMvc这个注释否者自动装配直接失效。

     我们来分析一下@EnableWebMvc这个注释,点进去可以看到@Import(DelegatingWebMvcConfiguration.class)这行代码,意思是导入了这个类,再往里面点一下可以看到DelegatingWebMvcConfiguration这个类继承了WebMvcConfigurationSupport

  然后我们再去WebMvcAutoConfiguration.java这个类里看一下,可以看到EnableWebMvcConfiguration这个类继承了DelegatingWebMvcConfiguration这个类,而这个类就是我们之前看到的@EnableWebMvc这个注解所导入的类

        我们可以在WebMvcAutoConfiguration这个类的开头看到一个注解@ConditionalOnMissingBean({WebMvcConfigurationSupport.class})这个注解表示如果出现WebMvcConfigurationSupport这个类那么自动装配将失效,因为在@EnableWebMvc中EnableWebMvcConfiguration这个类继承了DelegatingWebMvcConfiguration这个类所以不能加这个注解否者会使WebMvcAutoConfiguration自动装配失效

        在springboot中,有非常多的xxxx Configuration 这些类是用来帮助我们进行扩展配置的,只要看见了这个东西,我们就要注意了!因为他一定是改变了springboot一些原有的东西或者扩展了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值