springboot中访问项目外的静态资源

如果我们想自定义静态资源映射目录的话,只需重写addResourceHandlers方法即可。

@Configuration
public class MyWebMvcConfigurerAdapter extends WebMvcConfigurerAdapter {
    /**
     * 配置静态访问资源
     * @param registry
     */
    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/my/**").addResourceLocations("classpath:/my/");
        super.addResourceHandlers(registry);
    }
}

通过addResourceHandler添加映射路径,然后通过addResourceLocations来指定路径。我们访问自定义my文件夹中的elephant.jpg 图片的地址为 http://localhost:8080/my/elephant.jpg

如果你想指定外部的目录也很简单,直接addResourceLocations指定即可,代码如下:

@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
     registry.addResourceHandler("/my/**").addResourceLocations("file:E:/my/");
     super.addResourceHandlers(registry);
}

addResourceLocations指的是文件放置的目录,addResoureHandler指的是对外暴露的访问路径

参考文章:嘟嘟独立博客

你可能感兴趣的:(springboot)