WebMvcConfigurerAdapter是Spring MVC中的一个适配器类,用于配置Spring MVC的一些特性,例如拦截器、视图解析器、消息转换器等。但是,自Spring 5.0版本以后,WebMvcConfigurerAdapter已经被标记为过时,因此需要使用新的替代方案。以下是WebMvcConfigurerAdapter的详解和过时后的替代方案的完整攻略,含两个示例。
WebMvcConfigurerAdapter详解
WebMvcConfigurerAdapter是一个适配器类,用于配置Spring MVC的一些特性。它提供了一些方法,例如addInterceptors()、configureViewResolvers()、configureMessageConverters()等,可以用于配置拦截器、视图解析器、消息转换器等。
以下是WebMvcConfigurerAdapter的示例:
@Configuration
@EnableWebMvc
public class AppConfig extends WebMvcConfigurerAdapter {
@Override
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(new MyInterceptor());
}
@Override
public void configureViewResolvers(ViewResolverRegistry registry) {
registry.jsp("/WEB-INF/views/", ".jsp");
}
@Override
public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
converters.add(new MappingJackson2HttpMessageConverter());
}
}
在此示例中,创建了一个名为AppConfig的配置类,继承自WebMvcConfigurerAdapter。在该类中,重写了addInterceptors()、configureViewResolvers()、configureMessageConverters()方法,分别用于配置拦截器、视图解析器、消息转换器。
过时后的替代方案
自Spring 5.0版本以后,WebMvcConfigurerAdapter已经被标记为过时,需要使用新的替代方案。新的替代方案是实现WebMvcConfigurer接口,并使用@EnableWebMvc注解启用Spring MVC的自动配置特性。
以下是WebMvcConfigurer的示例:
@Configuration
@EnableWebMvc
public class AppConfig implements WebMvcConfigurer {
@Override
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(new MyInterceptor());
}
@Override
public void configureViewResolvers(ViewResolverRegistry registry) {
registry.jsp("/WEB-INF/views/", ".jsp");
}
@Override
public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
converters.add(new MappingJackson2HttpMessageConverter());
}
}
在此示例中,创建了一个名为AppConfig的配置类,实现了WebMvcConfigurer接口,并使用@EnableWebMvc注解启用Spring MVC的自动配置特性。在该类中,重写了addInterceptors()、configureViewResolvers()、configureMessageConverters()方法,分别用于配置拦截器、视图解析器、消息转换器。
总结
WebMvcConfigurerAdapter是Spring MVC中的一个适配器类,用于配置Spring MVC的一些特。但是,自Spring 5.0版本以后,WebMvcConfigurerAdapter已经被标记为过时,需要使用新的替代方案。新的替代方案是实现WebMvcConfigurer接口,并使用@EnableWebMvc注解启用Spring MVC的自动配置特性。在示例中,分别使用WebMvcConfigurerAdapter和WebMvcConfigurer实现了拦截器、视图解析器、消息转换器的配置。