本篇内容介绍了“springboot文件的上传和访问”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
一、上传
public @ResponseBody
ApiResult<UploadResult> upload(@RequestParam("file") MultipartFile file, @RequestParam(value="appId") String appId, @RequestParam("group") String group, @RequestParam("fileName") String originFileName){
try {
String suffix = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".") + 1).toLowerCase();
if(!allowUploadSuffixes.contains(suffix)){
throw new IotBaseException(9999, "不允许上传该文件类型");
}
String fileKey = UUID.randomUUID().toString() + "."+suffix;
FileSystemClient client = FileSystemClient.getClient(group);
String url = client.upload(fileKey, file.getBytes(), appId);
UploadFileEntity entity = new UploadFileEntity();
entity.setAppId(appId);
entity.setGroupName(group);
entity.setFileName(originFileName);
entity.setFileUrl(url);
entity.setMimeType(file.getContentType());
entity.setProvider(client.getProvider().name());
entity.setCreatedAt(new Date());
uploadFileEntityMapper.insert(entity);
return new ApiResult<>(new UploadResult(url, originFileName));
} catch (Exception e) {
e.printStackTrace();
throw new IotBaseException(ExceptionCode.SYSTEM_ERROR.code, "上传失败");
}
}
二、访问
spring:
resources:
static-location: classpath:/static/upload/
上面这一步好像不填也没关系
@Configuration
public class WebConfig implements WebMvcConfigurer {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/static/**").addResourceLocations("classpath:/static/");
}
}
“springboot文件的上传和访问”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注天达云网站,小编将为大家输出更多高质量的实用文章!