zhang song 6 лет назад
Родитель
Сommit
adfd18560b

+ 1 - 0
pine-admin/pom.xml

@@ -289,6 +289,7 @@
             <version>1.2.47</version>
             <scope>compile</scope>
         </dependency>
+
         <dependency>
             <groupId>com.upyun</groupId>
             <artifactId>java-sdk</artifactId>

+ 9 - 2
pine-admin/src/main/java/com/pine/admin/modules/youpaiyun/controller/YouPaiController.java

@@ -12,7 +12,10 @@ import org.springframework.web.multipart.commons.CommonsMultipartResolver;
 
 import javax.servlet.http.HttpServletRequest;
 import java.io.IOException;
+import java.text.SimpleDateFormat;
+import java.util.Calendar;
 import java.util.Iterator;
+import java.util.TimeZone;
 
 /**
  * @Author: Pine
@@ -24,11 +27,12 @@ import java.util.Iterator;
 @Api(value = "图片上传", tags = {"图片上传" })
 @RequestMapping("youpai")
 public class YouPaiController {
+    private SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMdd");
+
 
     @PostMapping(value = "/uploadFile")
     public Result uploadFile(HttpServletRequest request) {
 
-        long startTime = System.currentTimeMillis();
         //将当前上下文初始化给  CommonsMutipartResolver (多部分解析器)
         CommonsMultipartResolver multipartResolver = new CommonsMultipartResolver(request.getSession().getServletContext());
         //检查form中是否有enctype="multipart/form-data"
@@ -45,8 +49,11 @@ public class YouPaiController {
                 MultipartFile file = multiRequest.getFile(iter.next().toString());
                 if (file != null) {
                     try {
+                        String picName = System.currentTimeMillis() + file.getOriginalFilename().replaceAll(".+\\.", ".");
+                        String date = simpleDateFormat.format(Calendar.getInstance(TimeZone.getTimeZone("GMT+08:00")).getTime());
+                        String filePath = "/"+ date + "/" + picName;
                         YunUploadUtils yunUploadUtils =YunUploadUtils.getInstance();
-                        String path = yunUploadUtils.uploadToUpYun(file.getInputStream(), file.getBytes());
+                        String path = yunUploadUtils.uploadToUpYun(file.getInputStream(), file.getBytes(),filePath);
                         paths += path + ";";
                         System.out.println("path::::" + path);
                     } catch (IOException e) {

+ 2 - 8
pine-admin/src/main/java/com/pine/admin/modules/youpaiyun/util/YunUploadUtils.java

@@ -44,7 +44,7 @@ public class YunUploadUtils {
      * @param bytes       图片字节
      * @return 返回图片在又拍云的地址
      */
-    public String uploadToUpYun(InputStream inputStream, byte[] bytes) {
+    public String uploadToUpYun(InputStream inputStream, byte[] bytes,String filePath) {
         logger.debug("Being to uploadToUpYun.....");
         if (bytes == null || bytes.length == 0) {
             logger.error("uploadToUpYun fail due to bytes is empty ....");
@@ -52,20 +52,14 @@ public class YunUploadUtils {
         }
 
         // 如果上传的不是图片 则直接返回
-        if (!isPicture(bytes)) {
-            throw new RuntimeException("file is not a picture ...");
-        }
         try {
-            String picName = String.valueOf(System.currentTimeMillis()) + ".jpg";
-            String date = simpleDateFormat.format(Calendar.getInstance(TimeZone.getTimeZone("GMT+08:00")).getTime());
-            String filePath = "/" + date + "/" + picName;
             UpYun upYun = new UpYun(UpYunConf.nameSpace.trim(), UpYunConf.userName.trim(), UpYunConf.password.trim());
             upYun.setDebug(true);
             upYun.setContentMD5(MD5Utils.getInstance().createMd5ForImageUpload(inputStream));
             upYun.setFileSecret("");
             // 上传文件
             if (upYun.writeFile(filePath, bytes, true)) {
-                return UpYunConf.address + date + "/" + picName;
+                return UpYunConf.address  + filePath;
             }
         } catch (Exception e) {
             logger.error("uploadToUpYun fail ....", e);