SXSSF (Streaming XSSF) is the API variant that avoids storing the entire workbook in the Java heap memory as it's being built. This is important for most data extraction usages, in the same way as Groovy supports the Sql#eachRow() method as a streaming, memory-conserving option over Sql#rows().
I would suggest considering whether to use SXSSF by default, or at least toggled by an option.
SXSSF (Streaming XSSF) is the API variant that avoids storing the entire workbook in the Java heap memory as it's being built. This is important for most data extraction usages, in the same way as Groovy supports the
Sql#eachRow()
method as a streaming, memory-conserving option overSql#rows()
.I would suggest considering whether to use SXSSF by default, or at least toggled by an option.
See the HOWTO here http://poi.apache.org/spreadsheet/how-to.html#sxssf and various topics such as https://stackoverflow.com/questions/47851078/