27.1.1. Spring MVC Auto-configuration
27.1.1. Spring MVC自动配置
Spring Boot为Spring MVC提供的auto-configuration适用于大多数应用,并在Spring默认功能上添加了以下特性:
- 引入
ContentNegotiatingViewResolver和BeanNameViewResolverbeans。 - 对静态资源的支持,包括对WebJars的支持。
- 自动注册
Converter,GenericConverter,Formatterbeans。 - 对
HttpMessageConverters的支持。 - 自动注册
MessageCodeResolver。 - 对静态
index.html的支持。 - 对自定义
Favicon的支持。 - 自动使用
ConfigurableWebBindingInitializerbean。
如果保留Spring Boot MVC特性,你只需添加其他的MVC配置(拦截器,格式化处理器,视图控制器等)。你可以添加自己的WebMvcConfigurer类型的@Configuration类,而不需要注解@EnableWebMvc。如果希望使用自定义的RequestMappingHandlerMapping,RequestMappingHandlerAdapter,或ExceptionHandlerExceptionResolver,你可以声明一个WebMvcRegistrationsAdapter实例提供这些组件。
如果想全面控制Spring MVC,你可以添加自己的@Configuration,并使用@EnableWebMvc注解。