第十六节:学习Springboot 的自定义资源路径(自学Spring boot 3.x的第四天)
这节记录下如何访问自定义资源路径。
默认的资源访问路径为static。
比如要访问static下面的123.jpg,访问的时候直接localhost/123.jgp既可,不需要加static前缀。
但是如果要访问static以外的自定义资源路径时候就需要配置了。
如何配置呢?
第一步:
新建一个config目录。创建一个配置类WebAppConfig.java
package cn.wcyf.wcai.config;
import org.springframework.stereotype.Component;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
@Component
public class WebAppConfig implements WebMvcConfigurer {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/img/**") //定义自定义资源的访问前缀
.addResourceLocations("classpath:/images/")//定义自定义资源的存放路径
.addResourceLocations("classpath:/122/");
}
}
这个类实现WebMvcConfigurer接口,需要重新一个方法。删除超类调用方法,编写内容后如上图。上面代码中addResourceHandler是访问的前缀,随便怎么改都行。后面的addResourceLocation是自定义资源的存放路径。
如果要加多个自定义资源文件夹就需要addResourceLocations多个路径。
访问的时候如果是static的资源,仍然不需要加static前缀。但是如果是static以外的资源,需要加上在handler中定义的资源前缀名称,比如上面代码中的前缀是img,那么如果要访问自定义资源比如122下面的jgp图片的话,就是location/img/178.jgp