解决SpringBoot框架因post数据量过大没反应问题(踩坑)

 更新时间:2020年09月17日 10:15:44   作者:姚啊yao  
这篇文章主要介绍了解决SpringBoot框架因post数据量过大没反应问题(踩坑),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

此处网上最多的做法是需要修改tomcat的参数配置大致如下:

<Connector port="8080" protocol="HTTP/1.1" 
connectionTimeout="2000" 
redirectPort="8443" 
URIEncoding="UTF-8" 
maxThreads="3000" 
compression="on" compressableMimeType="text/html,text/xml" 
maxPostSize="10240"/>

然而对springboot项目来说好像并不管用~~~~~~~~~~~~

最后在尝试下,springboot的application中加入如下两句话:OK~~~~

spring.http.multipart.max-file-size=1000Mb

spring.http.multipart.max-request-size=1000Mb

补充知识:解决springboot2.X发送post请求数量限制问题

今天在测试自己开发的新功能时,发现的一件匪夷所思的事,前台通过ajax发送post请求到后台,请求的数据量非常大,数据到后台发现,controller层对应的方法接收的数据不够,由于后台没有提示什么错误,就各种方式找问题,花费了一天的时间,最后发现了问题,问题的原因:tomcat的限制了post的请求的大小和请求参数的个数;这里记录以下springboot2.x的处理方式:

1、处理post请求的大小,在配置文件中添加如下参数;

server:

tomcat:

max-http-post-size: -1

2、处理post请求参数的个数,在springboot的启动类中,添加如下代码:

@Bean
public TomcatServletWebServerFactory mbeddedServletContainerFactory() {
   TomcatServletWebServerFactory tomcatEmbeddedServletContainerFactory = new TomcatServletWebServerFactory ();
    
    tomcatEmbeddedServletContainerFactory.addConnectorCustomizers(connector ->{
      connector.setMaxParameterCount(Integer.MAX_VALUE);
    });
    
    return tomcatEmbeddedServletContainerFactory;
 }

以上这篇解决SpringBoot框架因post数据量过大没反应问题(踩坑)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 深入理解Java嵌套类和内部类

    深入理解Java嵌套类和内部类

    本篇文章主要介绍了深入理解Java嵌套类和内部类,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-05-05
  • Java实现异步延迟队列的方法详解

    Java实现异步延迟队列的方法详解

    目前系统中有很多需要用到延时处理的功能,本文就为大家介绍了Java实现异步延迟队列的方法,文中的示例代码讲解详细,需要的可以参考一下
    2023-03-03
  • SpringBoot项目启动时如何读取配置以及初始化资源

    SpringBoot项目启动时如何读取配置以及初始化资源

    这篇文章主要给大家介绍了关于SpringBoot项目启动时如何读取配置以及初始化资源的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者使用SpringBoot具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2020-06-06
  • 关于Spring源码是如何解决Bean的循环依赖

    关于Spring源码是如何解决Bean的循环依赖

    这篇文章主要介绍了关于Spring源码是如何解决Bean的循环依赖,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-12-12
  • 关于MyBatis10种超好用的写法(收藏)

    关于MyBatis10种超好用的写法(收藏)

    这篇文章主要介绍了关于MyBatis10种超好用的写法(收藏),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-08-08
  • Java使用openssl检测网站是否支持ocsp

    Java使用openssl检测网站是否支持ocsp

    OCSP在线证书状态协议是为了替换CRL而提出来的。对于现代web服务器来说一般都是支持OCSP的,OCSP也是现代web服务器的标配,这篇文章主要介绍了Java使用openssl检测网站是否支持ocsp,需要的朋友可以参考下
    2022-07-07
  • Java中常用的设计模式之单例模式详解

    Java中常用的设计模式之单例模式详解

    这篇文章主要为大家详细介绍了Java中常用的设计模式之单例模式,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-02-02
  • 详解Java多线程编程中线程的启动、中断或终止操作

    详解Java多线程编程中线程的启动、中断或终止操作

    在Java中start和tun方法可用被用来启动线程,而用interrupt方法来中断或终止线程,以下我们就来详解Java多线程编程中线程的启动、中断或终止操作
    2016-07-07
  • java 自定义可继承枚举Enum的案例

    java 自定义可继承枚举Enum的案例

    这篇文章主要介绍了java 自定义可继承枚举Enum的案例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-02-02
  • SpringBoot中整合MyBatis-Plus的方法示例

    SpringBoot中整合MyBatis-Plus的方法示例

    这篇文章主要介绍了SpringBoot中整合MyBatis-Plus的方法示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-09-09

最新评论