在springboot mvc或者java config配置中,如果我們項配置mvc相關的一些配置,那么就會涉及到這三個注解中的某個,那么他們之間有什么關系呢。
@EnableWebMvc = WebMvcConfigurationSupport,使用@EnableWebMvc注解就等於擴展了WebMvcConfigurationSupport,但是沒有擴展任何方法。具體用法有如下三種:
@EnableWebMvc+extends WebMvcConfigurationAdapter,在擴展的類中重寫父類的方法即可,這種方式會屏蔽springboot的@EnableAutoConfiguration中的設置。
extends WebMvcConfigurationSupport,在擴展的類中重寫父類的方法即可,這種方式會屏蔽springboot的@EnableAutoConfiguration中的設置。
extends WebMvcConfigurationAdapter,在擴展的類中重寫父類的方法即可,這種方式依舊使用springboot的@EnableAutoConfiguration中的設置。
前兩種用法會屏蔽springboot的@EnableAutoConfiguration中的設置,最后一種用法則不會屏蔽默認設置,所以要使用部分spring mvc默認配置的話,就需要使用第三種配置方式。