是否可以扩展WebMvcConfigurationSupport并使用WebMvcAutoConfiguration?
2022-09-03 05:21:27
我需要扩展WebMvcConfigurationSupport类,修改两件事:
@Configuration
public class WebConfig extends WebMvcConfigurationSupport {
@Override
public RequestMappingHandlerMapping requestMappingHandlerMapping() {
RequestMappingHandlerMapping handlerMapping = super.requestMappingHandlerMapping();
handlerMapping.setRemoveSemicolonContent(false);
handlerMapping.setOrder(1);
return handlerMapping;
}
}
我喜欢从WebMvcAutoConfiguration类注册的默认值,但由于该类上的条件注释,当我扩展WebMvcConfigurationSupport类时,它会阻止自动配置发生。
@Configuration
@ConditionalOnWebApplication
@ConditionalOnClass({ Servlet.class, DispatcherServlet.class,
WebMvcConfigurerAdapter.class })
@ConditionalOnMissingBean(WebMvcConfigurationSupport.class)
@Order(Ordered.HIGHEST_PRECEDENCE + 10)
@AutoConfigureAfter(DispatcherServletAutoConfiguration.class)
public class WebMvcAutoConfiguration {...}
是否要加载 WebMvcAutoConfiguration 类,而不必实质上复制/粘贴该类中的大部分代码?
或者是否可以从其他地方调用 RequestMappingHandlerMapping setOrder() 和 setRemoveSemicolonContent(),这样我就可以只使用@EnableWebMvc注释并运行自动配置类而不会出现任何问题?
提前致谢!