From 12b2799f67469071f39739f856f00de15d0f3905 Mon Sep 17 00:00:00 2001 From: "hong.yang" <hong.yang@ustcinfo.com> Date: Wed, 25 Oct 2023 17:11:42 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E6=94=B9minio=E6=93=8D?= =?UTF-8?q?=E4=BD=9C=E7=B1=BB=EF=BC=8C=E8=A7=A3=E5=86=B3=E4=BD=9C=E4=B8=BA?= =?UTF-8?q?=E4=BE=9D=E8=B5=96=E4=BD=BF=E7=94=A8=E6=97=B6=E5=87=BA=E7=8E=B0?= =?UTF-8?q?=E7=9A=84=E5=90=AF=E5=8A=A8=E5=BC=82=E5=B8=B8=EF=BC=9B=E5=8F=91?= =?UTF-8?q?=E5=B8=83=E6=B5=8B=E8=AF=95=E7=89=88=E6=9C=ACmvn2.0.1.202310250?= =?UTF-8?q?2.Alpha?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- DataRoom/dataroom-core/pom.xml | 2 +- .../core/utils/MinioFileInterface.java | 30 ++++++------------- DataRoom/dataroom-server/pom.xml | 2 +- DataRoom/pom.xml | 2 +- 4 files changed, 12 insertions(+), 24 deletions(-) diff --git a/DataRoom/dataroom-core/pom.xml b/DataRoom/dataroom-core/pom.xml index 3aedccb4..396e8cb1 100644 --- a/DataRoom/dataroom-core/pom.xml +++ b/DataRoom/dataroom-core/pom.xml @@ -6,7 +6,7 @@ <parent> <groupId>com.gccloud</groupId> <artifactId>dataroom</artifactId> - <version>2.0.1.2023102401.Alpha</version> + <version>2.0.1.2023102502.Alpha</version> </parent> <artifactId>dataroom-core</artifactId> diff --git a/DataRoom/dataroom-core/src/main/java/com/gccloud/dataroom/core/utils/MinioFileInterface.java b/DataRoom/dataroom-core/src/main/java/com/gccloud/dataroom/core/utils/MinioFileInterface.java index 0d1f4304..658e8a84 100644 --- a/DataRoom/dataroom-core/src/main/java/com/gccloud/dataroom/core/utils/MinioFileInterface.java +++ b/DataRoom/dataroom-core/src/main/java/com/gccloud/dataroom/core/utils/MinioFileInterface.java @@ -1,26 +1,13 @@ package com.gccloud.dataroom.core.utils; import com.gccloud.dataroom.core.config.bean.DataRoomMinioConfig; -import io.minio.BucketExistsArgs; -import io.minio.GetObjectArgs; -import io.minio.GetPresignedObjectUrlArgs; -import io.minio.MakeBucketArgs; -import io.minio.MinioClient; -import io.minio.RemoveObjectArgs; -import io.minio.errors.ErrorResponseException; -import io.minio.errors.InsufficientDataException; -import io.minio.errors.InternalException; -import io.minio.errors.InvalidResponseException; -import io.minio.errors.ServerException; -import io.minio.errors.XmlParserException; +import io.minio.*; import io.minio.http.Method; -import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.stereotype.Component; -import java.io.IOException; +import javax.annotation.Resource; import java.io.InputStream; -import java.security.InvalidKeyException; -import java.security.NoSuchAlgorithmException; /** * Minio快捷操作工具类 @@ -28,11 +15,12 @@ import java.security.NoSuchAlgorithmException; * @author Acechengui */ @Component +@ConditionalOnProperty(prefix = "gc.starter.file", name = "type", havingValue = "minio") public class MinioFileInterface { - @Autowired + @Resource private DataRoomMinioConfig minioConfig; - private MinioClient init() throws ServerException, InsufficientDataException, ErrorResponseException, IOException, NoSuchAlgorithmException, InvalidKeyException, InvalidResponseException, XmlParserException, InternalException { + private MinioClient init() throws Exception { MinioClient build = MinioClient.builder().endpoint(minioConfig.getUrl()).credentials(minioConfig.getAccessKey(), minioConfig.getSecretKey()).build(); //判断bucket是否存在,没有就创建 boolean found =build.bucketExists(BucketExistsArgs.builder().bucket(minioConfig.getBucketName()).build()); @@ -46,7 +34,7 @@ public class MinioFileInterface { * 删除文件 * @param objectName 文件名(路径) */ - public void deleteObject(String objectName) throws ServerException, InsufficientDataException, ErrorResponseException, IOException, NoSuchAlgorithmException, InvalidKeyException, InvalidResponseException, XmlParserException, InternalException { + public void deleteObject(String objectName) throws Exception { MinioClient minioClient = init(); //删除文件时,如果对应文件夹下的文件已删除完,文件夹会自动删除 minioClient.removeObject(RemoveObjectArgs.builder() @@ -60,7 +48,7 @@ public class MinioFileInterface { * 下载文件 * @param objectName 文件名(路径) */ - public InputStream download(String objectName) throws ServerException, InsufficientDataException, ErrorResponseException, IOException, NoSuchAlgorithmException, InvalidKeyException, InvalidResponseException, XmlParserException, InternalException { + public InputStream download(String objectName) throws Exception { MinioClient minioClient = init(); // 获取文件输入流 return minioClient.getObject( @@ -79,7 +67,7 @@ public class MinioFileInterface { * @param expires 失效时间(以秒为单位),默认是7天,不得大于七天 * @return url */ - public String presignedGetObject(String bucketName, String objectName, Integer expires) throws ServerException, InsufficientDataException, ErrorResponseException, IOException, NoSuchAlgorithmException, InvalidKeyException, InvalidResponseException, XmlParserException, InternalException { + public String presignedGetObject(String bucketName, String objectName, Integer expires) throws Exception { String url = ""; if (expires == null){ expires = 604800; diff --git a/DataRoom/dataroom-server/pom.xml b/DataRoom/dataroom-server/pom.xml index 4ee621a1..19ee9841 100644 --- a/DataRoom/dataroom-server/pom.xml +++ b/DataRoom/dataroom-server/pom.xml @@ -6,7 +6,7 @@ <parent> <groupId>com.gccloud</groupId> <artifactId>dataroom</artifactId> - <version>2.0.1.2023102401.Alpha</version> + <version>2.0.1.2023102502.Alpha</version> </parent> <artifactId>dataroom-server</artifactId> diff --git a/DataRoom/pom.xml b/DataRoom/pom.xml index 400438f7..17e2b649 100644 --- a/DataRoom/pom.xml +++ b/DataRoom/pom.xml @@ -5,7 +5,7 @@ <groupId>com.gccloud</groupId> <artifactId>dataroom</artifactId> - <version>2.0.1.2023102401.Alpha</version> + <version>2.0.1.2023102502.Alpha</version> <packaging>pom</packaging> <name>dataroom</name>