学习Spring Boot框架时,运行后发现无法加载静态资源的问题,在此记录下。 网上很多方法是继承WebMvcAutoConfiguration,但是我这边用了没效果,可能是我使用的方法不对。后来找到有效方法是实现WebMvcConfigurer接口。
实现WebMvcConfigurer接口。
package com.damon.musicplayer.play.config;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
import javax.annotation.Resource;
/**
* @ Description:
* @ Author :Damon
* @ Date :Created in 14:15 2020/5/14
*/
@Configuration
public class WebMvcConfig implements WebMvcConfigurer {
/**
* 添加静态资源文件,外部可以直接访问地址
*
* @param registry
*/
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/static/**").addResourceLocations("classpath:/static/**");
registry.addResourceHandler("/base/**").addResourceLocations("file:C:/music/**");
}
}
application.yml配置文件。
mvc:
static-path-pattern: /static/**
spring:
resources:
static-locations: classpath:/static/**,file:C:/music/**
静态页面使用。
<audio crossorigin>
<source src="base/test.mp3" type="audio/mpeg">
</audio>
<img src="static/img/test.jpg"/>