增加分布式文件Minio支持

This commit is contained in:
RuoYi
2020-12-22 09:30:07 +08:00
parent 161a6249e9
commit e100b0b940
7 changed files with 136 additions and 3 deletions

View File

@@ -9,7 +9,7 @@ import com.github.tobato.fastdfs.domain.fdfs.StorePath;
import com.github.tobato.fastdfs.service.FastFileStorageClient;
/**
* FastDFS文件存储
* FastDFS 文件存储
*
* @author ruoyi
*/

View File

@@ -37,7 +37,6 @@ public class LocalSysFileServiceImpl implements ISysFileService
* 本地文件上传接口
*
* @param file 上传的文件
* @param baseDir 相对应用的基目录
* @return 访问地址
* @throws Exception
*/

View File

@@ -0,0 +1,44 @@
package com.ruoyi.file.service;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
import com.ruoyi.file.config.MinioConfig;
import com.ruoyi.file.utils.FileUploadUtils;
import io.minio.MinioClient;
import io.minio.PutObjectArgs;
/**
* Minio 文件存储
*
* @author ruoyi
*/
@Service
public class MinioSysFileServiceImpl implements ISysFileService
{
@Autowired
private MinioConfig minioConfig;
@Autowired
private MinioClient client;
/**
* 本地文件上传接口
*
* @param file 上传的文件
* @return 访问地址
* @throws Exception
*/
public String uploadFile(MultipartFile file) throws Exception
{
String fileName = FileUploadUtils.extractFilename(file);
PutObjectArgs args = PutObjectArgs.builder()
.bucket(minioConfig.getBucketName())
.object(fileName)
.stream(file.getInputStream(), file.getSize(), -1)
.contentType(file.getContentType())
.build();
client.putObject(args);
return minioConfig.getUrl() + "/" + minioConfig.getBucketName() + "/" + fileName;
}
}