Package com.bytedesk.core.upload.minio
Class UploadMinioService
java.lang.Object
com.bytedesk.core.upload.minio.UploadMinioService
@Component
@ConditionalOnProperty(name="bytedesk.minio.enabled",
havingValue="true",
matchIfMissing=false)
public class UploadMinioService
extends Object
MinIO 对象存储服务
用于将图片、音频、视频等文件存储到 MinIO
- Author:
- bytedesk.com
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoiddeleteFile(String objectPath) 删除文件booleanfileExists(String objectPath) 检查文件是否存在private StringgetContentType(String fileName) 根据文件扩展名获取内容类型getDownloadUrl(String objectPath, int expiry) 获取文件下载URL(预签名URL)private StringgetFileUrl(String objectPath) 获取文件访问URLgetUploadUrl(String objectPath, int expiry) 获取文件上传URL(预签名URL)void初始化 MinIO 存储桶和策略uploadAttachment(org.springframework.web.multipart.MultipartFile file, String fileName) 上传附件文件uploadAudio(org.springframework.web.multipart.MultipartFile file, String fileName) 上传音频文件uploadAvatar(org.springframework.web.multipart.MultipartFile file, String fileName) 上传头像文件uploadDocument(org.springframework.web.multipart.MultipartFile file, String fileName) 上传文档文件uploadFile(File localFile, String fileName, String folder) 上传本地文件到 MinIOuploadFile(org.springframework.web.multipart.MultipartFile file, String fileName, String folder) 上传文件到 MinIOuploadFromUrl(String url, String fileName, String folder) 从 URL 下载并上传到 MinIOuploadImage(org.springframework.web.multipart.MultipartFile file, String fileName) 上传图片文件uploadVideo(org.springframework.web.multipart.MultipartFile file, String fileName) 上传视频文件
-
Field Details
-
bytedeskProperties
-
minioClient
@Autowired private io.minio.MinioClient minioClient
-
-
Constructor Details
-
UploadMinioService
public UploadMinioService()
-
-
Method Details
-
initMinio
@PostConstruct public void initMinio()初始化 MinIO 存储桶和策略 -
uploadFile
public String uploadFile(org.springframework.web.multipart.MultipartFile file, String fileName, String folder) 上传文件到 MinIO- Parameters:
file- MultipartFile 文件fileName- 文件名folder- 文件夹路径- Returns:
- 文件访问URL
-
uploadFile
上传本地文件到 MinIO- Parameters:
localFile- 本地文件fileName- 文件名folder- 文件夹路径- Returns:
- 文件访问URL
-
uploadFromUrl
从 URL 下载并上传到 MinIO- Parameters:
url- 文件URLfileName- 文件名folder- 文件夹路径- Returns:
- 文件访问URL
-
uploadImage
上传图片文件- Parameters:
file- MultipartFile 文件fileName- 文件名- Returns:
- 文件访问URL
-
uploadAudio
上传音频文件- Parameters:
file- MultipartFile 文件fileName- 文件名- Returns:
- 文件访问URL
-
uploadVideo
上传视频文件- Parameters:
file- MultipartFile 文件fileName- 文件名- Returns:
- 文件访问URL
-
uploadDocument
上传文档文件- Parameters:
file- MultipartFile 文件fileName- 文件名- Returns:
- 文件访问URL
-
uploadAvatar
上传头像文件- Parameters:
file- MultipartFile 文件fileName- 文件名- Returns:
- 文件访问URL
-
uploadAttachment
public String uploadAttachment(org.springframework.web.multipart.MultipartFile file, String fileName) 上传附件文件- Parameters:
file- MultipartFile 文件fileName- 文件名- Returns:
- 文件访问URL
-
deleteFile
删除文件- Parameters:
objectPath- 对象路径
-
fileExists
检查文件是否存在- Parameters:
objectPath- 对象路径- Returns:
- 是否存在
-
getDownloadUrl
获取文件下载URL(预签名URL)- Parameters:
objectPath- 对象路径expiry- 过期时间(秒)- Returns:
- 预签名URL
-
getUploadUrl
获取文件上传URL(预签名URL)- Parameters:
objectPath- 对象路径expiry- 过期时间(秒)- Returns:
- 预签名URL
-
getFileUrl
获取文件访问URL- Parameters:
objectPath- 对象路径- Returns:
- 文件访问URL
-
getContentType
根据文件扩展名获取内容类型- Parameters:
fileName- 文件名- Returns:
- 内容类型
-