springboot 上传文件10M限制解决办法


简单记录关于在分布式项目学习中的关于spring设定上传文件大小为10M的过程

  1. 出现问题 exceedMaxXXX ,百度查找解决办法。找到下面的方法.在application.properties或者application.yml中加入对应

# 最大支持文件大小
spring.servlet.multipart.max-file-size=100MB
# 最大支持请求大小
spring.servlet.multipart.max-request-size=100MB
  1. 测试发现并没有解决问题,在stackflow中找到的解决思路,除了设定上面的内容外,还需要设定tomcat的处理内存大小(在报错中也有提及)

// 设定tomcat的吞吐量
server.tomcat.max-swallow-size = 100MB
  1. 设置之后问题还是存在,抓破脑壳找问题,想到自己是分布式项目,单个服务配置了,网关gateway还是没变,连忙也配置上。

spring:
application:
  name: gateway
servlet: // 就是这个地方
  multipart:
    # 最大支持文件大小
    max-file-size: 100MB
    # 最大支持请求大小
    max-request-size: 100MB
#   tomcat:
#     max-swallow-size: 100MB
cloud:
  gateway:
    routes:
      - id: system
        uri: lb://system
        predicates:
          - Path=/system/**
      - id: business
#         uri: http://127.0.0.1:9002
        uri: lb://business
        predicates:
          - Path=/business/**
      - id: file
#         file和gateway使用的是同一个模块gateway的带宽,各自的带宽没有影响,但是整体gateway的带宽有影响,
# 所以在实际的开发项目的时候,为了更好的用户体验,一般会单独为大带宽的file模块增加一个路由gateway
        uri: http://127.0.0.1:9003
        predicates:
          - Path=/file/**
  1. 配置好之后发现还是错误,这,,,,,,,,,继续看代码,发现自己把两个server和spring下面的servlet弄混了。将改配置到spring的servlet的配置弄到了server下。改回来之后,调试成功。

spring:
application:
  name: gateway
servlet:
  multipart:
    # 最大支持文件大小
    max-file-size: 100MB
    # 最大支持请求大小
    max-request-size: 100MB
#   tomcat:
#     max-swallow-size: 100MB
server:
#路由最重要 所以最先开始
port: 9000
# servlet:  
#   multipart: 错误的位置
#     # 最大支持文件大小
#     max-file-size: 100MB
#     # 最大支持请求大小
#     max-request-size: 100MB
# #   tomcat:
# #     max-swallow-size: 100MB
  1. 结语:这次经历给我什么经验呢,了解了相关知识。其他的话emmmmm~~~憋不出大道理,继续学习了。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM