From 26d018d32e75438b764f4460cedb212027cec2d4 Mon Sep 17 00:00:00 2001
From: wzy <wzy19931122ai@163.com>
Date: Thu, 20 Oct 2022 23:20:36 +0800
Subject: [PATCH] fix
---
src/main/java/com/xcong/farmer/cms/modules/system/controller/AdminCommonController.java | 45 ++++++++++++++++++++++++++++++++++++---------
1 files changed, 36 insertions(+), 9 deletions(-)
diff --git a/src/main/java/com/xcong/farmer/cms/modules/system/controller/AdminCommonController.java b/src/main/java/com/xcong/farmer/cms/modules/system/controller/AdminCommonController.java
index d2f9eae..4216c52 100644
--- a/src/main/java/com/xcong/farmer/cms/modules/system/controller/AdminCommonController.java
+++ b/src/main/java/com/xcong/farmer/cms/modules/system/controller/AdminCommonController.java
@@ -1,5 +1,8 @@
package com.xcong.farmer.cms.modules.system.controller;
+import cn.hutool.core.img.Img;
+import cn.hutool.core.img.ImgUtil;
+import cn.hutool.core.io.FileUtil;
import cn.hutool.core.util.IdUtil;
import com.xcong.farmer.cms.common.contants.AppContants;
import com.xcong.farmer.cms.common.response.Result;
@@ -8,15 +11,20 @@
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
+import net.coobird.thumbnailator.Thumbnails;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
+import javax.imageio.ImageIO;
import javax.validation.Valid;
+import java.awt.image.BufferedImage;
import java.io.File;
+import java.io.FileOutputStream;
import java.io.IOException;
+import java.io.InputStream;
import java.util.Map;
@@ -128,19 +136,38 @@
if (!uploadDir.isDirectory()) {
uploadDir.mkdir();
}
- //获得文件的后缀
+
+
+ // 获得文件的后缀
String filename = IdUtil.simpleUUID() + file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf("."));
- File filepath = new File(savePath + filename);
- try {
- //存文件
- file.transferTo(filepath);
- } catch (IOException e) {
- e.printStackTrace();
+ if (isImage(file.getInputStream())) {
+ Thumbnails.of(file.getInputStream())
+ // 图片大小(长宽)压缩比例 从0-1,1表示原图
+ .scale(1f)
+ // 图片质量压缩比例 从0-1,越接近1质量越好
+ .outputQuality(0.5f)
+ .toOutputStream(new FileOutputStream(savePath + filename));
+ } else {
+ File filepath = new File(savePath + filename);
+ try {
+ //存文件
+ file.transferTo(filepath);
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
}
+
String visitPath = (saveUrl + filename);
return Result.ok("上传成功",visitPath);
}
-
-
+ private boolean isImage(InputStream inputStream) {
+ BufferedImage read = null;
+ try {
+ read = ImageIO.read(inputStream);
+ } catch (IOException e) {
+ return false;
+ }
+ return read != null;
+ }
}
--
Gitblit v1.9.1