(注意!)WebMvcConfigurerAdapter 在spring 5.0中已经弃用了。

原来的使用方式

@Deprecated
public abstract class WebMvcConfigurerAdapter implements WebMvcConfigurer {

    /**
     * {@inheritDoc}
     * <p>This implementation is empty.
     */
    @Override
    public void configurePathMatch(PathMatchConfigurer configurer) {
    }

 

替代的使用方式

实现接口

@Configuration
public class WebMvcConfg implements WebMvcConfigurer {
  //省略
}

继承类

@Configuration
public class WebMvcConfg extends WebMvcConfigurationSupport {
  //省略
}

WebMvcConfigureAdapter 比较常用的重写接口

/** 解决跨域问题 **/
public void addCorsMappings(CorsRegistry registry) ;
/** 添加拦截器 **/
void addInterceptors(InterceptorRegistry registry);
/** 这里配置视图解析器 **/
void configureViewResolvers(ViewResolverRegistry registry);
/** 配置内容裁决的一些选项 **/
void configureContentNegotiation(ContentNegotiationConfigurer configurer);
/** 视图跳转控制器 **/
void addViewControllers(ViewControllerRegistry registry);
/** 静态资源处理 **/
void addResourceHandlers(ResourceHandlerRegistry registry);
/** 默认静态资源处理器 **/
void configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer);

 

实际应用

在实际的web应用中,一般对添加拦截器的接口实现的比较多,比如下面的例子:

@Override
    public void addInterceptors(InterceptorRegistry registry) {
        registry.addInterceptor(new 拦截器1).addPathPatterns("/**");
        registry.addInterceptor(new 拦截器2).addPathPatterns("/open/**");
        super.addInterceptors(registry);
    }

 

参考文章:

 

版权声明:本文为xlli原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/xlli/p/10065418.html