SpringBoot:アップロードファイルサイズの制限を変更する
1905 ワード
SpringBoot:アップロードファイルサイズの制限を変更する
Spring Bootのデフォルトのファイルのアップロードサイズは2 Mで、複数のドキュメントをアップロードすると、大きなドキュメントがアップロードされると、いつもファイルのサイズが限度を超えるという問題が発生します.解決方法は以下の通りです.
方法一、appication.propertiesに配置項目を追加する
Spring Bootのデフォルトのファイルのアップロードサイズは2 Mで、複数のドキュメントをアップロードすると、大きなドキュメントがアップロードされると、いつもファイルのサイズが限度を超えるという問題が発生します.解決方法は以下の通りです.
方法一、appication.propertiesに配置項目を追加する
# Single file max size
multipart.maxFileSize=50Mb
# All files max size
multipart.maxRequestSize=50Mb
方法二、スタートクラスに配置ビーンを追加するimport javax.servlet.MultipartConfigElement;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.servlet.MultipartConfigFactory;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
@SpringBootApplication
public class App
{
public static void main( String[] args ) {
SpringApplication.run(App.class, args);
}
/**
*
* @return
*/
@Bean
public MultipartConfigElement multipartConfigElement() {
MultipartConfigFactory factory = new MultipartConfigFactory();
//
factory.setMaxFileSize("20480KB");
///
factory.setMaxRequestSize("204800KB");
return factory.createMultipartConfig();
}
}
上記の2つの方法では、大きい時間、Long、Kb、MBを設定しても良いです.MultiiprtConfigFactory類における変換規則は以下の通りである. private long parseSize(String size) {
Assert.hasLength(size, "Size must not be empty");
size = size.toUpperCase();
return size.endsWith("KB")?Long.valueOf(size.substring(0, size.length() - 2)).longValue() * 1024L:(size.endsWith("MB")?Long.valueOf(size.substring(0, size.length() - 2)).longValue() * 1024L * 1024L:Long.valueOf(size).longValue());
}
なお、上記の設定はバックグラウンドのみであり、具体的な項目ではフロントエンドに対応する設定が必要となる場合があります.