快捷搜索: 王者荣耀 脱发

java处理大容量excel报错解决

java使用easyexcel读取excel将数据保存到数据库,由于excel数据量较大,有40多万行,大小接近20M,在处理中报错了 分为两处报错, 第一个浏览器报错:413 Request Entity Too Large 请求实体太大的原因 由于Nginx默认的request body为1M,小于我上传的大小 这里修改nginx配置文件nginx.conf 在http{}中加入 client_max_body_size 100m; 然后重启nginx 第一个报错解决

第二个springboot报错,如下图

springboot默认设置的上传文件的大小是1MB,这里也需要修改: application.properties文件如下:

spring.servlet.multipart.enabled=true
spring.servlet.multipart.max-file-size=300MB
spring.servlet.multipart.max-request-size=300MB
spring.servlet.multipart.file-size-threshold=0
spring.servlet.multipart.location=/usr/local/project/file
spring.servlet.multipart.resolve-lazily=false

application.yml文件如下:

spring.servlet:
    multipart:
      enabled: true
      location: /usr/local/project/file
      max-file-size: 300MB
      max-request-size: 300MB
      file-size-threshold: 0
      resolve-lazily: false

主要是加上max-file-size和max-request-size这两个参数

修改完毕,40万条数据入库:

经验分享 程序员 微信小程序 职场和发展