springboot文件上傳時(shí)maxPostSize設(shè)置大小失效問(wèn)題及解決
springboot文件上傳時(shí)maxPostSize設(shè)置大小失效
報(bào)錯(cuò)信息
Failed to parse multipart servlet request; nested exception is java.lang.IllegalStateException: The multi-part request contained parameter data (excluding uploaded files) that exceeded the limit for maxPostSize set on the associated connector
Caused by: java.lang.IllegalStateException: The multi-part request contained parameter data (excluding uploaded files) that exceeded the limit for maxPostSize set on the associated connector
該配置嘗試無(wú)效,百度說(shuō)是版本問(wèn)題,核對(duì)過(guò)后發(fā)現(xiàn)無(wú)誤
servlet: ?? ?multipart: ?? ? ?enabled: true ?? ? ?max-file-size: 1000MB ?? ? ?max-request-size: 1000MB
解決辦法
因?yàn)槲疫@里上傳是傳圖片,圖片以base64形式攜帶在請(qǐng)求參數(shù)中,form表單的形式提交,故懷疑可能是請(qǐng)求參數(shù)大小被限制了,于是添加以下配置
#注意這是server?。〔皇巧厦娴膕ervlet,別看錯(cuò)了。。。 server: ? tomcat: ? ? max-http-post-size: 100MB ?#請(qǐng)求參數(shù)長(zhǎng)度 ?? ?max-http-form-post-size: 100MB #form表單長(zhǎng)度
重啟解決
springboot設(shè)置文件上傳大小限制
問(wèn)題
SpringBoot默認(rèn)上傳文件大小不能超過(guò)1MB,超過(guò)之后會(huì)報(bào)以下異常:
org.apache.tomcat.util.http.fileupload.FileUploadBase$FileSizeLimitExceededException: The field file exceeds its maximum permitted size of 1048576 bytes.
解決方法
第一種解決方案:
增加Bean配置,注意當(dāng)前類(lèi)上需要加注解@Configuration,不然掃不到就不會(huì)起作用了;一般配置放在啟動(dòng)類(lèi)中就可以。
/** ?
?* 文件上傳配置 ?
?* @return ?
?*/
@Bean
public MultipartConfigElement multipartConfigElement() {
? ? MultipartConfigFactory factory = new MultipartConfigFactory(); ?
? ? //文件最大
? ? factory.setMaxFileSize("10240KB"); //KB,MB
? ? /// 設(shè)置總上傳數(shù)據(jù)總大小
? ? factory.setMaxRequestSize("102400KB");?
? ? return factory.createMultipartConfig(); ?
}第二種解決方案:
在配置文件(application.properties/application.yml)中加入如下設(shè)置即可:
# 單個(gè)文件大?。∕b和Kb都可以) spring.servlet.multipart.maxFileSize=30MB # 總上傳的數(shù)據(jù)大小 spring.servlet.multipart.maxRequestSize=30MB
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
maven模塊化開(kāi)發(fā)部署實(shí)現(xiàn)方案
有些用戶(hù)有定制化需求,需要添加新的模塊功能,因此需要平臺(tái)主體功能迭代的同時(shí),非主體功能和定制化功能插件化,本文給大家介紹maven模塊化開(kāi)發(fā)部署實(shí)現(xiàn)方案,感興趣的朋友一起看看吧2024-01-01
J2EE項(xiàng)目代碼編寫(xiě)規(guī)范分享
這篇文章主要介紹了J2EE項(xiàng)目代碼編寫(xiě)規(guī)范分享,需要的朋友可以參考下2014-10-10
SpringBoot利用ThreadPoolTaskExecutor批量插入百萬(wàn)級(jí)數(shù)據(jù)的具體實(shí)現(xiàn)
ThreadPoolTaskExecutor是Spring提供的任務(wù)執(zhí)行器實(shí)現(xiàn)之一,允許開(kāi)發(fā)者配置線(xiàn)程池參數(shù)以適應(yīng)不同的應(yīng)用場(chǎng)景,創(chuàng)建 ThreadPoolTaskExecutor 實(shí)例并設(shè)置核心和最大線(xiàn)程數(shù)等屬性可以?xún)?yōu)化性能,本文介紹了SpringBoot利用ThreadPoolTaskExecutor批量插入百萬(wàn)級(jí)數(shù)據(jù)的具體實(shí)現(xiàn)2024-12-12
Springboot集成graylog及配置過(guò)程解析
這篇文章主要介紹了Springboot集成graylog及配置過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-12-12
springboot日期格式化全局LocalDateTime詳解
文章主要分析了Spring Boot中ObjectMapper對(duì)象的序列化和反序列化過(guò)程,并具體探討了日期格式化問(wèn)題,通過(guò)分析Spring Boot的自動(dòng)配置類(lèi)JacksonAutoConfiguration,文章詳細(xì)說(shuō)明了ObjectMapper對(duì)象的創(chuàng)建和配置過(guò)程2025-02-02

