소스 검색

优化文件上传逻辑

woody 1 년 전
부모
커밋
5bde390cb6

+ 0 - 11
framework-upload/src/main/java/com/chelvc/framework/upload/UploadHandler.java

@@ -1,8 +1,6 @@
 package com.chelvc.framework.upload;
 
-import java.awt.image.BufferedImage;
 import java.io.File;
-import java.io.IOException;
 import java.io.InputStream;
 
 /**
@@ -28,13 +26,4 @@ public interface UploadHandler {
      * @return 文件访问地址
      */
     String upload(InputStream stream, String suffix);
-
-    /**
-     * 图片上传
-     *
-     * @param image 图片流
-     * @return 文件访问地址
-     * @throws IOException I/O异常
-     */
-    String upload(BufferedImage image) throws IOException;
 }

+ 1 - 15
framework-upload/src/main/java/com/chelvc/framework/upload/support/StandardUploadHandler.java

@@ -1,11 +1,7 @@
 package com.chelvc.framework.upload.support;
 
-import java.awt.image.BufferedImage;
 import java.io.File;
-import java.io.FileOutputStream;
-import java.io.IOException;
 import java.io.InputStream;
-import javax.imageio.ImageIO;
 
 import com.chelvc.framework.base.util.FileUtils;
 import com.chelvc.framework.base.util.HttpUtils;
@@ -41,19 +37,9 @@ public class StandardUploadHandler implements UploadHandler {
     }
 
     @Override
-    public String upload(@NonNull InputStream stream, @NonNull String suffix) {
+    public String upload(@NonNull InputStream stream, String suffix) {
         String filename = StringUtils.uuid() + StringUtils.ifEmpty(suffix, "." + suffix);
         FileUtils.write(new File(this.properties.getPath(), filename), stream);
         return HttpUtils.url(this.properties.getDomain(), filename);
     }
-
-    @Override
-    public String upload(@NonNull BufferedImage image) throws IOException {
-        image = FileUtils.compress(image);
-        String filename = StringUtils.uuid() + ".jpeg";
-        try (FileOutputStream output = new FileOutputStream(new File(this.properties.getPath(), filename))) {
-            ImageIO.write(image, "jpeg", output);
-        }
-        return HttpUtils.url(this.properties.getDomain(), filename);
-    }
 }

+ 1 - 23
framework-upload/src/main/java/com/chelvc/framework/upload/support/TencentUploadHandler.java

@@ -1,12 +1,7 @@
 package com.chelvc.framework.upload.support;
 
-import java.awt.image.BufferedImage;
 import java.io.File;
-import java.io.FileOutputStream;
-import java.io.IOException;
 import java.io.InputStream;
-import java.util.UUID;
-import javax.imageio.ImageIO;
 
 import com.chelvc.framework.base.util.FileUtils;
 import com.chelvc.framework.base.util.StringUtils;
@@ -55,26 +50,9 @@ public class TencentUploadHandler implements UploadHandler {
     }
 
     @Override
-    public String upload(@NonNull InputStream stream, @NonNull String suffix) {
+    public String upload(@NonNull InputStream stream, String suffix) {
         String filename = StringUtils.uuid() + StringUtils.ifEmpty(suffix, "." + suffix);
         this.client.putObject(this.properties.getBucket(), filename, stream, new ObjectMetadata());
         return this.name2url(filename);
     }
-
-    @Override
-    public String upload(@NonNull BufferedImage image) throws IOException {
-        // 图片压缩
-        image = FileUtils.compress(image);
-        File target = new File(FileUtils.getUploadDirectory(), UUID.randomUUID().toString() + ".jpeg");
-        try (FileOutputStream output = new FileOutputStream(target)) {
-            ImageIO.write(image, "jpeg", output);
-        }
-
-        // 上传图片
-        try {
-            return this.upload(target);
-        } finally {
-            FileUtils.delete(target);
-        }
-    }
 }