From ab060213fe5b62ba8bf9b87c8a93ba7e9fea05db Mon Sep 17 00:00:00 2001
From: liuhaonan <konodioda2333@vip.qq.com>
Date: 星期六, 02 四月 2022 11:39:01 +0800
Subject: [PATCH] 单灯数据导出
---
sandu-common/src/main/java/com/sandu/common/file/impl/AliOssFileServiceImpl.java | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 53 insertions(+), 0 deletions(-)
diff --git a/sandu-common/src/main/java/com/sandu/common/file/impl/AliOssFileServiceImpl.java b/sandu-common/src/main/java/com/sandu/common/file/impl/AliOssFileServiceImpl.java
index a158728..ac43eab 100644
--- a/sandu-common/src/main/java/com/sandu/common/file/impl/AliOssFileServiceImpl.java
+++ b/sandu-common/src/main/java/com/sandu/common/file/impl/AliOssFileServiceImpl.java
@@ -21,6 +21,7 @@
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.ByteArrayInputStream;
+import java.io.File;
import java.io.IOException;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
@@ -105,4 +106,56 @@
return uploadDto;
}
+
+ public FileUploadDto uploadFile(File multipartFile) {
+ String originalFilename = multipartFile.getName();
+// long size = multipartFile.get();
+ String suffix = FileUtil.getSuffix(originalFilename);
+ String dayStr = LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyyMMddHHmm"));
+ String fileName = dayStr + UUID.fastUUID()+ "." + suffix;
+
+ FileUploadDto uploadDto = new FileUploadDto();
+ OSS ossClient = new OSSClientBuilder().build(endPoint, keyId, keySecret);
+ try {
+ //瀹瑰櫒涓嶅瓨鍦紝灏卞垱寤�
+ if (!ossClient.doesBucketExist(bucketName)) {
+ ossClient.createBucket(bucketName);
+ CreateBucketRequest createBucketRequest = new CreateBucketRequest(bucketName);
+ createBucketRequest.setCannedACL(CannedAccessControlList.PublicRead);
+ ossClient.createBucket(createBucketRequest);
+ }
+ //涓婁紶鏂囦欢
+ PutObjectResult result = ossClient.putObject(new PutObjectRequest(bucketName, fileName, multipartFile));
+ //璁剧疆鏉冮檺 杩欓噷鏄叕寮�璇�
+// ossClient.setBucketAcl(ossProperties.getBucketName(), CannedAccessControlList.PublicRead);
+
+ if (result != null) {
+ String url = "";
+ // https://BucketName.Endpoint/ObjectName
+ if (StrUtil.isBlank(host)) {
+ url = "https://" + bucketName + "." + endPoint + "/" + fileName;
+ } else {
+ if (!host.endsWith("/")) {
+ url = host + "/" + fileName;
+ } else {
+ url = host + fileName;
+ }
+ }
+ uploadDto.setFileUrl(url);
+ }
+ } catch (Exception e) {
+ log.error(e.getMessage(), e);
+ throw new BusinessException(e.getMessage());
+ } finally {
+ //鍏抽棴
+ ossClient.shutdown();
+ }
+
+ uploadDto.setOriginName(originalFilename);
+ uploadDto.setFileName(fileName);
+ uploadDto.setFileType(FileUtil.extName(originalFilename));
+ uploadDto.setStorageType(FileStorageEnums.ALIBABA.getCode());
+
+ return uploadDto;
+ }
}
--
Gitblit v1.9.3