zoukankan      html  css  js  c++  java
  • POI导出Excel的三种 workbook的区别

    三种workbook分别是HSSFWorkbook、XSSFWorkbook、SXSSFWorkbook

    第一种:HSSFWorkbook

    针对EXCEL 2003版本,扩展名为.xls,此种的局限就是导出的行数最多为65535行。因为导出行数受限,不足7万行,所以一般不会发送内存溢出(OOM)的情况

    第二种:XSSFWorkbook

    这种形式的出现是由于第一种HSSF的局限性产生的,因为其导出行数较少,XSSFWorkbook应运而生,其对应的是EXCEL2007+ ,扩展名为.xlsx ,最多可以导出104万行,不过这样就伴随着一个问题–OOM内存溢出。因为使用XSSFWorkbook创建的book sheet row cell 等是存在内存中的,并没有持久化到磁盘上,那么随着数据量的增大,内存的需求量也就增大。那么很有可能出现 OOM了,那么怎么解决呢?

    第三种:SXSSFWorkbook  poi.jar 3.8+

    SXSSFWorkbook可以根据行数将内存中的数据持久化写到文件中。

    此种的情况就是设置最大内存条数,比如设置最大内存量为5000行, new SXSSFWookbook(5000),当行数达到 5000 时,把内存持久化写到文件中,以此逐步写入,避免OOM。这样就完美解决了大数据下导出的问题

    学习POI移步至https://www.yiibai.com/apache_poi/apache_poi_core_classes.html

    参考地址
    https://blog.csdn.net/qq_29631809/article/details/72785338

  • 相关阅读:
    win10 UWP button
    内网分享资源
    内网分享资源
    CF724F Uniformly Branched Trees
    win10 UWP FlipView
    win10 UWP FlipView
    win10 UWP FlipView
    搭建阿里云 centos mysql tomcat jdk
    搭建阿里云 centos mysql tomcat jdk
    win10 UWP 申请微软开发者
  • 原文地址:https://www.cnblogs.com/kiko2014551511/p/11531676.html
Copyright © 2011-2022 走看看