springMVC的适配器模式

来源:互联网 发布:淘宝手机端红包设置 编辑:程序博客网 时间:2024/05/29 08:06

前言

设计模式 在开源项目中是使用的非常多的,我们稍微来看一下
在springboot项目中,我们可以自己配置
静态文件的访问路径,
统一的异常处理,拦截器,跨域问题,这些你可以重新自己写,也可以选择自己写一下,于是 springMVC很贴心的提供了一个类适配器WebMvcConfigurerAdapter

看看源码

source类 是 WebMvcConfigurer

   public interface WebMvcConfigurer {    void configurePathMatch(PathMatchConfigurer var1);    void configureContentNegotiation(ContentNegotiationConfigurer var1);................里面有很多的方法}

适配器类

public abstract class WebMvcConfigurerAdapter implements WebMvcConfigurer {    public WebMvcConfigurerAdapter() {    }    public void configurePathMatch(PathMatchConfigurer configurer) {    }    public void configureContentNegotiation(ContentNegotiationConfigurer configurer) {    }}   ..... 和source类一样多 而且没有具体的实现

这是 target类,就是你想实现的
你可以选择性的去实现,也可以不去实现,这就是 类适配器 的好处

@EnableWebMvc@Configurationpublic class WebConfig extends WebMvcConfigurerAdapter {    @Override    public void addResourceHandlers(ResourceHandlerRegistry registry) {        registry.addResourceHandler("/templates/**").addResourceLocations(ResourceUtils.CLASSPATH_URL_PREFIX+"/templates/");        registry.addResourceHandler("/static/**").addResourceLocations(ResourceUtils.CLASSPATH_URL_PREFIX+"/static/");        super.addResourceHandlers(registry);    }}