Springboot設(shè)置文件上傳大小限制的實(shí)現(xiàn)示例
Spring Boot做文件上傳時(shí)出現(xiàn)了報(bào)錯(cuò)
The field file exceeds its maximum permitted size of 1048576 bytes
顯示文件的大小超出了允許的范圍。查看了官方文檔,原來(lái)Spring Boot工程嵌入的tomcat限制了請(qǐng)求的文件大小默認(rèn)為1MB,單次請(qǐng)求的文件的總數(shù)不能大于10Mb.
方案1:
要更改這個(gè)默認(rèn)值需要在配置文件(如application.properties)中加入兩個(gè)配置.
multipart.maxFileSize = 10MB //單個(gè)文件的大小 multipart.maxRequestSize=100MB //單次請(qǐng)求的文件的總大小
如果是想要不限制文件上傳的大小,那么就把兩個(gè)值都設(shè)置為-1就行啦
后來(lái)在配置文件中加入了這段代碼,被提示已經(jīng)過(guò)期.后來(lái)才知道上面的代碼只適用于Spring Boot 1.4以下
Spring Boot1.4版本后配置更改為:
spring.http.multipart.maxFileSize = 10MB spring.http.multipart.maxRequestSize=100MB
Spring Boot2.0之后的版本配置修改為:
spring.servlet.multipart.max-file-size = 10MB spring.servlet.multipart.max-request-size=100MB
方案2:【推薦】
增加一個(gè)配置類
@Configuration
public class FileUploadConfiguration {
@Bean
public MultipartConfigElement multipartConfigElement() {
MultipartConfigFactory factory = new MultipartConfigFactory();
// 允許上傳的文件最大值
factory.setMaxFileSize(DataSize.parse("50MB")); // KB,MB
/// 設(shè)置總上傳數(shù)據(jù)總大小
factory.setMaxRequestSize(DataSize.parse("50MB"));
return factory.createMultipartConfig();
}
}到此這篇關(guān)于Springboot設(shè)置文件上傳大小限制的實(shí)現(xiàn)示例的文章就介紹到這了,更多相關(guān)Springboot 文件上傳大小限制內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java并發(fā)編程之線程池實(shí)現(xiàn)原理詳解
池化思想是一種空間換時(shí)間的思想,期望使用預(yù)先創(chuàng)建好的對(duì)象來(lái)減少頻繁創(chuàng)建對(duì)象的性能開(kāi)銷,java中有多種池化思想的應(yīng)用,例如:數(shù)據(jù)庫(kù)連接池、線程池等,下面就來(lái)具體講講2023-05-05
FluentMybatis實(shí)現(xiàn)mybatis動(dòng)態(tài)sql拼裝和fluent api語(yǔ)法
本文主要介紹了FluentMybatis實(shí)現(xiàn)mybatis動(dòng)態(tài)sql拼裝和fluent api語(yǔ)法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-08-08
java實(shí)現(xiàn)堆排序以及時(shí)間復(fù)雜度的分析
本文主要介紹了java實(shí)現(xiàn)堆排序以及時(shí)間復(fù)雜度,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-12-12

