参考文章
1、springboot访问静态资源问题访问不到,实现addResourceHandlers方法
2、SpringBoot重写addResourceHandlers映射文件路径导致无法访问static资源
3、SpringBoot对静态资源映射的处理
1、我的结构目录
2、我的图片地址
放置在本机(windows)的E:\images下。
3、代码
新建一个配置类,实现WebMvcConfigurer
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
/**
* 静态资源映射
* author: tcy
* Date: 2022/8/10
*/
@Configuration
public class WebMvcConfig implements WebMvcConfigurer {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/static/upload/**").addResourceLocations("file:E:/images/");
}
}
注意点:
1、注意写@Configuration
而不是@Configurable
。刚开始没注意写错了,死活都不在启动项目的时候自动加载这个类。两者具体的区别可以看Spring注解中@Configuration和@Configurable的区别
2、addResourceHandler
中要写/static/upload/**
,我刚开始只写了/upload/**
。但是访问的时候一直报404。我到现在也不知道为什么哭哭哭。。。
3、addResourceLocations
中路径最后一定要加/
4、访问路径
访问路径写:ip:port/项目名/static/upload/a.png