如果我們想自定義靜態資源映射目錄的話,只需重寫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指的是對外暴露的訪問路徑
參考文章:嘟嘟獨立博客