From 2f79917e3dfa1f22f811e009d6aeba648696fc47 Mon Sep 17 00:00:00 2001 From: winter Date: Wed, 21 Feb 2024 16:21:55 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=8A=E4=BC=A0=E4=B8=B4=E6=97=B6=E7=9B=AE?= =?UTF-8?q?=E5=BD=95=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/iformall/config/MultipartConfig.java | 52 +++++++++++++++++++ .../src/main/resources/application.yml | 1 + .../src/main/resources/application.yml | 1 + .../src/main/resources/application.yml | 1 + 4 files changed, 55 insertions(+) create mode 100644 suimangAdmin/src/main/java/com/iformall/config/MultipartConfig.java diff --git a/suimangAdmin/src/main/java/com/iformall/config/MultipartConfig.java b/suimangAdmin/src/main/java/com/iformall/config/MultipartConfig.java new file mode 100644 index 0000000..aa09f7b --- /dev/null +++ b/suimangAdmin/src/main/java/com/iformall/config/MultipartConfig.java @@ -0,0 +1,52 @@ +package com.iformall.config; + +import java.io.File; + +import javax.servlet.MultipartConfigElement; + +import org.springframework.beans.factory.annotation.Value; +import org.springframework.boot.web.servlet.MultipartConfigFactory; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.util.unit.DataSize; + +import lombok.extern.slf4j.Slf4j; + +@Slf4j +@Configuration +public class MultipartConfig { + + @Value("${spring.servlet.multipart.location}") + private String fileTempDir; + + @Value("${spring.servlet.multipart.max-file-size}") + private String maxFileSize; + + @Value("${spring.servlet.multipart.max-request-size}") + private String maxRequestSize; + + + @Bean + MultipartConfigElement mulitipartConfigElement() { + String os = System.getProperty("os.name"); + if (os.toLowerCase().startsWith("win")) { + fileTempDir = "C:" + fileTempDir; + } + log.info("fileTempDir:{}",fileTempDir); + MultipartConfigFactory factory = new MultipartConfigFactory(); + File tmpDirFile = new File(fileTempDir); + if (!tmpDirFile.exists()) { + boolean mkdirSuccess = tmpDirFile.mkdirs(); + log.info(" create temp dir, result:{}",mkdirSuccess); + } + factory.setLocation(fileTempDir); + factory.setMaxFileSize(DataSize.parse(maxFileSize)); + factory.setMaxRequestSize(DataSize.parse(maxRequestSize)); + return factory.createMultipartConfig(); + } + + public static void main(String[] args) { + System.out.println(DataSize.parse("50MB")); + } + +} diff --git a/suimangAdmin/src/main/resources/application.yml b/suimangAdmin/src/main/resources/application.yml index 85d85e6..f192ac3 100644 --- a/suimangAdmin/src/main/resources/application.yml +++ b/suimangAdmin/src/main/resources/application.yml @@ -16,6 +16,7 @@ spring: multipart: max-file-size: 300MB max-request-size: 1024MB + location: /mnt/tmp cache: type: REDIS cache-names: redis_cache #缓存的名字(可以不指定) diff --git a/suimangCApi/src/main/resources/application.yml b/suimangCApi/src/main/resources/application.yml index 6eaec45..c353a8c 100644 --- a/suimangCApi/src/main/resources/application.yml +++ b/suimangCApi/src/main/resources/application.yml @@ -16,6 +16,7 @@ spring: multipart: max-file-size: 50MB max-request-size: 100MB + location: /mnt/tmp # rocketmq: # nameServer: 127.0.0.1:9876 # producer: diff --git a/suimangSchedule/src/main/resources/application.yml b/suimangSchedule/src/main/resources/application.yml index 597ef90..7075314 100644 --- a/suimangSchedule/src/main/resources/application.yml +++ b/suimangSchedule/src/main/resources/application.yml @@ -16,6 +16,7 @@ spring: multipart: max-file-size: 2MB max-request-size: 2MB + location: /mnt/tmp cache: type: REDIS cache-names: redis_cache #缓存的名字(可以不指定)