From 1fb23cbeeaaeda0a66cf8fe8977c3f5915743cc7 Mon Sep 17 00:00:00 2001
From: fengjin <1435304038@qq.com>
Date: 星期五, 21 十月 2022 15:13:10 +0800
Subject: [PATCH] Merge branch 'zigonggao_dev' into huacheng_test
---
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/config/MinioUtil.java | 106 ++++++++++++++++++++++++++++++++++++++++++++++++----
1 files changed, 97 insertions(+), 9 deletions(-)
diff --git a/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/config/MinioUtil.java b/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/config/MinioUtil.java
index 2753796..6158a48 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/config/MinioUtil.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/config/MinioUtil.java
@@ -1,5 +1,6 @@
package com.panzhihua.applets.config;
+import com.panzhihua.common.utlis.DateUtils;
import io.minio.MinioClient;
import io.minio.ObjectStat;
import org.apache.commons.io.IOUtils;
@@ -9,9 +10,7 @@
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
-import java.io.ByteArrayOutputStream;
-import java.io.IOException;
-import java.io.InputStream;
+import java.io.*;
import java.net.URLEncoder;
import java.util.UUID;
@@ -40,8 +39,7 @@
/**
* 文件上传
*
- * @param file
- * 要上传的文件
+ * @param file 要上传的文件
* @return
*/
public String upload(MultipartFile file, String name) {
@@ -49,9 +47,9 @@
try {
UUID uuid = UUID.randomUUID();
StringBuilder s = new StringBuilder();
- s.append(uuid.toString().replace("-", "")).append("/");
+ s.append(DateUtils.getCurrentDateyymd()).append("-original").append("/");
MinioClient minioClient = new MinioClient(minioProperties.getHost(), minioProperties.getAccessKey(),
- minioProperties.getSecretKey());
+ minioProperties.getSecretKey());
// bucket 不存在,创建
if (!minioClient.bucketExists(minioProperties.getBucket())) {
minioClient.makeBucket(minioProperties.getBucket());
@@ -63,6 +61,73 @@
String fileName = s.append(name).toString();
String contentType = file.getContentType();
minioClient.putObject(minioProperties.getBucket(), fileName, input, contentType);
+ StringBuilder fileUrl = new StringBuilder(minioProperties.getUrl());
+ String url = fileUrl.append(fileName).toString();
+ return url;
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+ return null;
+ }
+ /**
+ * 文件上传
+ *
+ * @param file 要上传的文件
+ * @return
+ */
+ public String uploadRetFileName(MultipartFile file, String name) {
+ if (null != file) {
+ try {
+ UUID uuid = UUID.randomUUID();
+ StringBuilder s = new StringBuilder();
+ s.append(DateUtils.getCurrentDateyymd()).append("-original").append("/");
+ MinioClient minioClient = new MinioClient(minioProperties.getHost(), minioProperties.getAccessKey(),
+ minioProperties.getSecretKey());
+ // bucket 不存在,创建
+ if (!minioClient.bucketExists(minioProperties.getBucket())) {
+ minioClient.makeBucket(minioProperties.getBucket());
+ }
+ // 得到文件流
+ InputStream input = file.getInputStream();
+ // 文件名
+ // String fileName = uuid + "/images." + FilenameUtils.getExtension(file.getOriginalFilename());
+ String fileName = s.append(name).toString();
+ String contentType = file.getContentType();
+ minioClient.putObject(minioProperties.getBucket(), fileName, input, contentType);
+ StringBuilder fileUrl = new StringBuilder(minioProperties.getUrl());
+ String url = fileUrl.append(fileName).toString();
+ return fileName;
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+ return null;
+ }
+
+ /**
+ * 文件上传
+ *
+ * @param file 要上传的文件
+ * @return
+ */
+ public String uploadFile(File file, String name) {
+ if (null != file) {
+ try {
+ StringBuilder s = new StringBuilder();
+ s.append(DateUtils.getCurrentDateyymd()).append("/");
+ MinioClient minioClient = new MinioClient(minioProperties.getHost(), minioProperties.getAccessKey(),
+ minioProperties.getSecretKey());
+ // bucket 不存在,创建
+ if (!minioClient.bucketExists(minioProperties.getBucket())) {
+ minioClient.makeBucket(minioProperties.getBucket());
+ }
+ // 得到文件流
+ InputStream input = new FileInputStream(file);
+ // 文件名
+ // String fileName = uuid + "/images." + FilenameUtils.getExtension(file.getOriginalFilename());
+ String fileName = s.append(name).toString();
+ minioClient.putObject(minioProperties.getBucket(), fileName, input, "");
StringBuilder fileUrl = new StringBuilder(minioProperties.getUrl());
String url = fileUrl.append(fileName).toString();
return url;
@@ -86,7 +151,7 @@
InputStream inputStream;
try {
MinioClient minioClient = new MinioClient(minioProperties.getHost(), minioProperties.getAccessKey(),
- minioProperties.getSecretKey());
+ minioProperties.getSecretKey());
ObjectStat stat = minioClient.statObject(minioProperties.getBucket(), fileName);
inputStream = minioClient.getObject(minioProperties.getBucket(), fileName);
response.setContentType(stat.contentType());
@@ -114,7 +179,7 @@
byte[] bytes = new byte[0];
try {
MinioClient minioClient = new MinioClient(minioProperties.getHost(), minioProperties.getAccessKey(),
- minioProperties.getSecretKey());
+ minioProperties.getSecretKey());
inputStream = minioClient.getObject(minioProperties.getBucket(), fileName);
bytes = toByteArray(inputStream);
} catch (Exception e) {
@@ -122,4 +187,27 @@
}
return bytes;
}
+
+
+ /**
+ * 删除
+ *
+ * @param fileName
+ * @return
+ * @throws Exception
+ */
+ public String removeMinio(String fileName) {
+ try {
+ //创建MinioClient对象
+ //fileName = "6edbdf8c2a1146ddaf4fbfcb30f804ad/72b2a44c18a54802854931a65b604576.jpg"
+ MinioClient minioClient = new MinioClient(minioProperties.getHost(), minioProperties.getAccessKey(),
+ minioProperties.getSecretKey());
+ minioClient.removeObject(minioProperties.getBucket(), fileName);
+ return "success";
+ } catch (Exception e) {
+ e.printStackTrace();
+ return e.getMessage();
+ }
+
+ }
}
--
Gitblit v1.7.1