
目前支持 Minio ,阿里云 OSS,腾讯 COS,亚马逊 AWSS3,本地存储
支持文件类型合法校验
OSS.fileStorage(platform.bucket(bucketName // 使用默认 yml 配置媒体类型 .allowMediaType(bis // 只允许gif图片上传,所有图片可以是 image/ 部分匹配 .allowMediaType(fis, t -> t.startsWith("image/gif" .upload(bis, filename;
源码地址: https://gitee.com/aizuda/aizuda-components
仓库地址:https://search.maven.org/search?q=aizuda-oss
升级日志:
新增Amazon AWS S3 支持
优化OSS文件检查新增注释说明
对外返回 Client 实现
优化返回签名地址
优化返回桶名称
其它完善
SpringBoot 使用
application.yml 配置
# 配置存储平台,第一位 test-minio 为默认存储平台
aizuda:
oss:
test-minio:
platform: minio
endpoint: http://xxxxxx
accessKey: xxx
secretKey: xxxxxxx
bucketName: test1
aliyun-oss:
platform: aliyun
endpoint: http://xxxxxx
accessKey: xxx
secretKey: xxxxxxx
bucketName: testBean 方式注入,以下注入 minio3 为平台别名
@Bean
public IFileStorage minio3( {
// 注入一个自定义存储平台
OssProperty ossProperty = new OssProperty(;
ossProperty.setPlatform(StoragePlatform.minio;
ossProperty.setBucketName("test3";
ossProperty.setEndpoint("http://xxxxx";
ossProperty.setAccessKey("q7RNi6elbvQ0j1ry";
ossProperty.setSecretKey("HMoKkeu0zGSvSdDGWlMDuytaRON12St9";
return new Minio(ossProperty;
}测试上传 platform 存储平台(不设置使用默认)bucketName 存储桶(不设置使用默认)
// 静态方法方式调用 OSS.fileStorage(platform.bucket(bucketName.upload(fis, filename; // 依赖注入方式调用 fileStorage.bucket(bucketName.upload(fis, filename;
#IFileStorage 方法说明
| 属性 | 说明 |
|---|---|
| upload | 上传 |
| delete | 删除 |
| download | 下载 |
| getUrl | 文件可预览地址 |
#配置属性说明
| 属性 | 说明 |
|---|---|
| platform | 存储平台,目前支持 Minio ,阿里云 OSS,腾讯 COS,亚马逊 AWSS3,本地存储 |
| endpoint | 域名 |
| accessKey | 访问 KEY |
| secretKey | 密钥 |
| bucketName | 存储空间桶名 |
| connectionTimeout | 连接超时,阿里云 OSS 有效 |