From 0ce882de54e04b195caef4cc29fec1962c2d74f9 Mon Sep 17 00:00:00 2001 From: yanghui <2536613402@qq.com> Date: 星期三, 19 十月 2022 11:13:27 +0800 Subject: [PATCH] Merge branch 'local_20221014' into huacheng_test --- springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/config/MinioUtil.java | 70 +++++++++++++++++++++++++++++++--- 1 files changed, 63 insertions(+), 7 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 5ccf02f..e5babc5 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 @@ -39,8 +39,7 @@ /** * 文件上传 * - * @param file - * 要上传的文件 + * @param file 要上传的文件 * @return */ public String upload(MultipartFile file, String name) { @@ -50,7 +49,7 @@ StringBuilder s = new StringBuilder(); s.append(uuid.toString().replace("-", "")).append("/"); MinioClient minioClient = new MinioClient(minioProperties.getHost(), minioProperties.getAccessKey(), - minioProperties.getSecretKey()); + minioProperties.getSecretKey()); // bucket 不存在,创建 if (!minioClient.bucketExists(minioProperties.getBucket())) { minioClient.makeBucket(minioProperties.getBucket()); @@ -74,8 +73,42 @@ /** * 文件上传 * - * @param file - * 要上传的文件 + * @param file 要上传的文件 + * @return + */ + public String uploadRetFileName(MultipartFile file, String name) { + if (null != file) { + try { + UUID uuid = UUID.randomUUID(); + StringBuilder s = new StringBuilder(); + s.append(uuid.toString().replace("-", "")).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) { @@ -118,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()); @@ -146,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) { @@ -154,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