此功能可以让Spring Boot把D:/images/目录映射为/static/images/,是前端可以直接使用目录下的图片
@Configuration
public class WebAppConfigurer extends WebMvcConfigurerAdapter {
@Value("${imagesPath}")
private String mImagesPath;
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
if(mImagesPath.equals("") || mImagesPath.equals("${cbs.imagesPath}")){
String imagesPath = CustomWebMvcConfigurerAdapter.class.getClassLoader().getResource("").getPath();
if(imagesPath.indexOf(".jar")>0){
imagesPath = imagesPath.substring(0, imagesPath.indexOf(".jar"));
}else if(imagesPath.indexOf("classes")>0){
imagesPath = "file:"+imagesPath.substring(0, imagesPath.indexOf("classes"));
}
imagesPath = imagesPath.substring(0, imagesPath.lastIndexOf("/"))+"/images/";
mImagesPath = imagesPath;
}
LoggerFactory.getLogger(CustomWebMvcConfigurerAdapter.class).info("imagesPath="+mImagesPath);
registry.addResourceHandler("/static/images/**").addResourceLocations(mImagesPath);
super.addResourceHandlers(registry);
}
}
# for images path
imagesPath: file:/D:/images/
verifyCodeImagesPath: D:/images/verifyCode/