From 0a128e454cf644d094eccf4b8790f217f28e94f7 Mon Sep 17 00:00:00 2001 From: 疯狂的狮子li <15040126243@163.com> Date: 星期一, 19 七月 2021 19:40:18 +0800 Subject: [PATCH] update 编写 Minio 实现 调整OSS模块结构 --- ruoyi-oss/src/main/java/com/ruoyi/oss/service/abstractd/AbstractCloudStorageService.java | 48 ++++++++++++++++++++++++++++++++++-------------- 1 files changed, 34 insertions(+), 14 deletions(-) diff --git a/ruoyi-oss/src/main/java/com/ruoyi/oss/service/abstractd/AbstractCloudStorageService.java b/ruoyi-oss/src/main/java/com/ruoyi/oss/service/abstractd/AbstractCloudStorageService.java index cbdbd93..42f44e1 100644 --- a/ruoyi-oss/src/main/java/com/ruoyi/oss/service/abstractd/AbstractCloudStorageService.java +++ b/ruoyi-oss/src/main/java/com/ruoyi/oss/service/abstractd/AbstractCloudStorageService.java @@ -1,36 +1,56 @@ package com.ruoyi.oss.service.abstractd; +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.io.IoUtil; +import cn.hutool.core.util.IdUtil; import cn.hutool.core.util.StrUtil; -import com.ruoyi.oss.config.CloudStorageConfig; +import com.ruoyi.oss.entity.UploadResult; import com.ruoyi.oss.service.ICloudStorageService; -import com.ruoyi.oss.utils.DateUtils; +import org.springframework.beans.factory.InitializingBean; -import java.util.UUID; +import java.io.InputStream; +import java.util.Date; /** * 浜戝瓨鍌�(鏀寔涓冪墰銆侀樋閲屼簯銆佽吘璁簯銆乵inio) + * + * @author Lion Li */ -public abstract class AbstractCloudStorageService implements ICloudStorageService { +public abstract class AbstractCloudStorageService implements ICloudStorageService, InitializingBean { - /** - * 浜戝瓨鍌ㄩ厤缃俊鎭� - */ - protected CloudStorageConfig config; - - public int getServiceType() { - return config.getType(); - } + @Override + public abstract String getServiceType(); @Override public String getPath(String prefix, String suffix) { // 鐢熸垚uuid - String uuid = UUID.randomUUID().toString().replaceAll("-", ""); + String uuid = IdUtil.fastSimpleUUID(); // 鏂囦欢璺緞 - String path = DateUtils.dateTime() + "/" + uuid; + String path = DateUtil.format(new Date(), "yyyyMMdd") + "/" + uuid; if (StrUtil.isNotBlank(prefix)) { path = prefix + "/" + path; } return path + suffix; } + @Override + public abstract UploadResult upload(byte[] data, String path); + + @Override + public abstract void delete(String path); + + @Override + public UploadResult upload(InputStream inputStream, String path) { + byte[] data = IoUtil.readBytes(inputStream); + return this.upload(data, path); + } + + @Override + public abstract UploadResult uploadSuffix(byte[] data, String suffix); + + @Override + public abstract UploadResult uploadSuffix(InputStream inputStream, String suffix); + + @Override + public abstract void afterPropertiesSet() throws Exception; } -- Gitblit v1.9.3