oss-spring-boot-starter
兼容S3 协议的通用文件存储工具类 ,支持 兼容S3 协议的云存储
- MINIO
- 阿里云
- 华为云
- 腾讯云
- 京东云
…
spring boot starter依赖
- 方便在 web 环境下使用
oss,已上传至 maven 仓库
<dependency><groupId>com.litong.boot</groupId><artifactId>oss-spring-boot-starter</artifactId><version>1.0-SNAPSHOT</version></dependency>
使用方法
配置文件
oss:#使用云OSS 需要关闭path-style-access: false#对应上图 ③ 处配置endpoint: s3-cn-east-1.qiniucs.com# 上文创建的AK, 一定注意复制完整不要有空格access-key: xxx# 上文创建的SK, 一定注意复制完整不要有空格secret-key: xxx# 上文创建的桶名称bucket-name: test
代码使用
@Autowiredprivate OssTemplate ossTemplate;@Transactional(rollbackFor = Exception.class)public Map<String, Object> uploadFile(MultipartFile file) {String fileName = IdUtil.simpleUUID() + StrUtil.DOT + FileUtil.extName(file.getOriginalFilename());Map<String, Object> resultMap = new HashMap<>(4);resultMap.put("fileName", fileName);try {ossTemplate.putObject(CommonConstants.BUCKET_NAME, fileName, file.getInputStream());// 文件管理数据记录,收集管理追踪文件SysFileDO sysFile = new SysFileDO();// 原文件名String original = file.getOriginalFilename();sysFile.setFileName(fileName);sysFile.setOriginal(original);sysFile.setFileSize(file.getSize());sysFile.setFileType(FileUtil.extName(original));sysFile.setBucketName(ossProperties.getBucketName());this.save(sysFile);} catch (Exception e) {log.error("上传失败", e);}return resultMap;}
