存储
作者:唐亚峰 | battcn
字数统计:285 字
TIP
支持阿里云
、腾讯云
、自建Minio
、七牛云
、等多种云存储,提供丰富的API开箱即用,如不满足业务需要,可以自行扩展storage-spring-boot-starter
添加依赖
在 pom.xml
中添加 SDK 的依赖包,可以参考项目中的案例
xml
<dependency>
<groupId>com.wemirr.framework</groupId>
<artifactId>storage-spring-boot-starter</artifactId>
<version>${lastVersion}</version>
</dependency>
注意
默认所有基础SDK都是不会被依赖到 pom.xml
中的,需要开发者自行依赖
minio
xml
<dependency>
<groupId>io.minio</groupId>
<artifactId>minio</artifactId>
</dependency>
阿里云
xml
<dependency>
<groupId>com.aliyun.oss</groupId>
<artifactId>aliyun-sdk-oss</artifactId>
</dependency>
七牛云
xml
<dependency>
<groupId>com.qiniu</groupId>
<artifactId>qiniu-java-sdk</artifactId>
</dependency>
配置规则
市面上主流的云存储基本都支持,如果遇到不支持的可以自己基于 StorageOperation
接口实现自己需要的存储类
yaml
# 阿里云
extend.oss.cloud.aliyun.access-key=xxxx
extend.oss.cloud.aliyun.bucket=xxxx
# 腾讯云
extend.oss.cloud.tencent.access-key=xxxx
extend.oss.cloud.tencent.app-id=xxxx
# 自建Minio
extend.oss.cloud.minio.access-key=xxxx
extend.oss.cloud.minio.bucket=xxxx
# 七牛云
extend.oss.cloud.qiniu.enabled=true
extend.oss.cloud.qiniu.region=region0
extend.oss.cloud.qiniu.bucket=battcn
extend.oss.cloud.qiniu.mapping-path=http://qiniu.battcn.com
使用方式
注入 StorageOperation
就可以用了,简单粗暴
java
@Slf4j
@RestController
@RequestMapping("/files")
@RequiredArgsConstructor
@Tag(name = "文件管理", description = "文件管理")
public class FileController {
private final StorageOperation storageOperation;
}