接口 WebMvcConfigurer
- 所有已知实现类:
WebMvcConfigurerAdapter
public interface WebMvcConfigurer
Defines callback methods to customize the Java-based configuration for Spring MVC enabled via@EnableWebMvc
.@EnableWebMvc
-annotated configuration classes may implement this interface to be called back and given a chance to customize the default configuration. Consider extendingWebMvcConfigurerAdapter
, which provides a stub implementation of all interface methods.- 从以下版本开始:
- 3.1
- 作者:
- Rossen Stoyanchev, Keith Donald, David Syer
方法概要
所有方法 实例方法 抽象方法 修饰符和类型 方法 说明 void
addArgumentResolvers(List<HandlerMethodArgumentResolver> argumentResolvers)
Add resolvers to support custom controller method argument types.void
addCorsMappings(CorsRegistry registry)
Configure cross origin requests processing.void
addFormatters(FormatterRegistry registry)
void
addInterceptors(InterceptorRegistry registry)
Add Spring MVC lifecycle interceptors for pre- and post-processing of controller method invocations.void
addResourceHandlers(ResourceHandlerRegistry registry)
Add handlers to serve static resources such as images, js, and, css files from specific locations under web application root, the classpath, and others.void
addReturnValueHandlers(List<HandlerMethodReturnValueHandler> returnValueHandlers)
Add handlers to support custom controller method return value types.void
addViewControllers(ViewControllerRegistry registry)
Configure simple automated controllers pre-configured with the response status code and/or a view to render the response body.void
configureAsyncSupport(AsyncSupportConfigurer configurer)
Configure asynchronous request handling options.void
configureContentNegotiation(ContentNegotiationConfigurer configurer)
Configure content negotiation options.void
configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer)
Configure a handler to delegate unhandled requests by forwarding to the Servlet container's "default" servlet.void
configureHandlerExceptionResolvers(List<HandlerExceptionResolver> exceptionResolvers)
Configure exception resolvers.void
configureMessageConverters(List<HttpMessageConverter<?>> converters)
Configure theHttpMessageConverter
s to use for reading or writing to the body of the request or response.void
configurePathMatch(PathMatchConfigurer configurer)
Helps with configuring HandlerMappings path matching options such as trailing slash match, suffix registration, path matcher and path helper.void
configureViewResolvers(ViewResolverRegistry registry)
Configure view resolvers to translate String-based view names returned from controllers into concreteView
implementations to perform rendering with.void
extendHandlerExceptionResolvers(List<HandlerExceptionResolver> exceptionResolvers)
Extending or modify the list of exception resolvers configured by default.void
extendMessageConverters(List<HttpMessageConverter<?>> converters)
A hook for extending or modifying the list of converters after it has been configured.MessageCodesResolver
getMessageCodesResolver()
Provide a customMessageCodesResolver
for building message codes from data binding and validation error codes.Validator
getValidator()
Provide a customValidator
instead of the one created by default.
方法详细资料
configurePathMatch
void configurePathMatch(PathMatchConfigurer configurer)
Helps with configuring HandlerMappings path matching options such as trailing slash match, suffix registration, path matcher and path helper. Configured path matcher and path helper instances are shared for:- RequestMappings
- ViewControllerMappings
- ResourcesMappings
- 从以下版本开始:
- 4.0.3
configureContentNegotiation
void configureContentNegotiation(ContentNegotiationConfigurer configurer)
Configure content negotiation options.
configureAsyncSupport
void configureAsyncSupport(AsyncSupportConfigurer configurer)
Configure asynchronous request handling options.
configureDefaultServletHandling
void configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer)
Configure a handler to delegate unhandled requests by forwarding to the Servlet container's "default" servlet. A common use case for this is when theDispatcherServlet
is mapped to "/" thus overriding the Servlet container's default handling of static resources.
addFormatters
void addFormatters(FormatterRegistry registry)
addInterceptors
void addInterceptors(InterceptorRegistry registry)
Add Spring MVC lifecycle interceptors for pre- and post-processing of controller method invocations. Interceptors can be registered to apply to all requests or be limited to a subset of URL patterns.Note that interceptors registered here only apply to controllers and not to resource handler requests. To intercept requests for static resources either declare a
MappedInterceptor
bean or switch to advanced configuration mode by extendingWebMvcConfigurationSupport
and then overrideresourceHandlerMapping
.
addResourceHandlers
void addResourceHandlers(ResourceHandlerRegistry registry)
Add handlers to serve static resources such as images, js, and, css files from specific locations under web application root, the classpath, and others.
addCorsMappings
void addCorsMappings(CorsRegistry registry)
Configure cross origin requests processing.- 从以下版本开始:
- 4.2
addViewControllers
void addViewControllers(ViewControllerRegistry registry)
Configure simple automated controllers pre-configured with the response status code and/or a view to render the response body. This is useful in cases where there is no need for custom controller logic -- e.g. render a home page, perform simple site URL redirects, return a 404 status with HTML content, a 204 with no content, and more.
configureViewResolvers
void configureViewResolvers(ViewResolverRegistry registry)
Configure view resolvers to translate String-based view names returned from controllers into concreteView
implementations to perform rendering with.- 从以下版本开始:
- 4.1
addArgumentResolvers
void addArgumentResolvers(List<HandlerMethodArgumentResolver> argumentResolvers)
Add resolvers to support custom controller method argument types.This does not override the built-in support for resolving handler method arguments. To customize the built-in support for argument resolution, configure
RequestMappingHandlerAdapter
directly.- 参数:
argumentResolvers
- initially an empty list
addReturnValueHandlers
void addReturnValueHandlers(List<HandlerMethodReturnValueHandler> returnValueHandlers)
Add handlers to support custom controller method return value types.Using this option does not override the built-in support for handling return values. To customize the built-in support for handling return values, configure RequestMappingHandlerAdapter directly.
- 参数:
returnValueHandlers
- initially an empty list
configureMessageConverters
void configureMessageConverters(List<HttpMessageConverter<?>> converters)
Configure theHttpMessageConverter
s to use for reading or writing to the body of the request or response. If no converters are added, a default list of converters is registered.Note that adding converters to the list, turns off default converter registration. To simply add a converter without impacting default registration, consider using the method
extendMessageConverters(java.util.List)
instead.- 参数:
converters
- initially an empty list of converters
extendMessageConverters
void extendMessageConverters(List<HttpMessageConverter<?>> converters)
A hook for extending or modifying the list of converters after it has been configured. This may be useful for example to allow default converters to be registered and then insert a custom converter through this method.- 参数:
converters
- the list of configured converters to extend.- 从以下版本开始:
- 4.1.3
configureHandlerExceptionResolvers
void configureHandlerExceptionResolvers(List<HandlerExceptionResolver> exceptionResolvers)
Configure exception resolvers.The given list starts out empty. If it is left empty, the framework configures a default set of resolvers, see
WebMvcConfigurationSupport.addDefaultHandlerExceptionResolvers(List)
. Or if any exception resolvers are added to the list, then the application effectively takes over and must provide, fully initialized, exception resolvers.Alternatively you can use
extendHandlerExceptionResolvers(List)
which allows you to extend or modify the list of exception resolvers configured by default.- 参数:
exceptionResolvers
- initially an empty list- 另请参阅:
extendHandlerExceptionResolvers(List)
,WebMvcConfigurationSupport.addDefaultHandlerExceptionResolvers(List)
extendHandlerExceptionResolvers
void extendHandlerExceptionResolvers(List<HandlerExceptionResolver> exceptionResolvers)
Extending or modify the list of exception resolvers configured by default. This can be useful for inserting a custom exception resolver without interfering with default ones.- 参数:
exceptionResolvers
- the list of configured resolvers to extend- 从以下版本开始:
- 4.3
- 另请参阅:
WebMvcConfigurationSupport.addDefaultHandlerExceptionResolvers(List)
getValidator
Validator getValidator()
Provide a customValidator
instead of the one created by default. The default implementation, assuming JSR-303 is on the classpath, is:OptionalValidatorFactoryBean
. Leave the return value asnull
to keep the default.
getMessageCodesResolver
MessageCodesResolver getMessageCodesResolver()
Provide a customMessageCodesResolver
for building message codes from data binding and validation error codes. Leave the return value asnull
to keep the default.