开始

图片在浏览器上打开,
做服务资源的映射。

实现WebMvcConfigurer
image.png

接口里面有一个addResourceHandlers,字面意思是添加资源的助手。它是为我们静态资源做辅助的。
image.png

  1. <br />![image.png](https://cdn.nlark.com/yuque/0/2021/png/192446/1613912772411-67c564fc-595b-48f3-b89a-af01c70ce44c.png#id=QfAQv&margin=%5Bobject%20Object%5D&name=image.png&originHeight=417&originWidth=621&originalType=binary&size=221834&status=done&style=none)

image.png
我们来实现这个接口
image.png

image.png
把相应的地址进行注册,映射所有资源。
image.png

image.png
这里3个点,代表可以传入数组
image.png
我们的内容是在本地的操作系统的目录
image.png
file:/是固定写法,后面跟着就是要映射的地址。
image.png

我们要映射的images这个目录之下
image.png

image.png

后面再加上斜杠,映射本地资源
image.png
windows下的配置

@Configuration
public class WebMvcConfig implements WebMvcConfigurer {
    @Bean
    public RestTemplate restTemplate(RestTemplateBuilder builder) {
        return builder.build();
    }

    // 实现静态资源的映射
    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/**")
                .addResourceLocations("file:D:\\demos\\upload\\"); // 映射本地静态资源
    }
}

重启服务

8088,后面加上映射到images后面的路径的地址
image.png

image.png

image.png
http://localhost:8088/21011270605KYX8H/face-21011270605KYX8H.jpg

image.png

swagger2

这个时候swagger2的地址无法访问了。这是由于我们上面配置了静态资源的映射,没有为swagger去配置。
image.png
添加swagger目录的地址
image.png

image.png

@Configuration
public class WebMvcConfig implements WebMvcConfigurer {
    @Bean
    public RestTemplate restTemplate(RestTemplateBuilder builder) {
        return builder.build();
    }

    // 实现静态资源的映射
    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/**")
                .addResourceLocations("classpath:/META-INF/resources/") // 映射swagger2
                .addResourceLocations("file:D:\\demos\\upload\\"); // 映射本地静态资源
    }
}

重启服务测试
image.png

结束