Html2excel,是一个可直接使用Html文件,或者使用内置的Freemarker、Groovy、Beetl等模板引擎Excel构建器生成的Html文件,以Html文件中的Table作为Excel模板来生成任意复杂布局的Excel的工具包,支持.xls、.xlsx格式,支持对背景色、边框、字体等进行个性化设置,支持合并单元格。
其定位为主要用于生成复杂布局的Excel,复杂布局指的是包含多种不规则合并单元格、背景色、字体大小、斜体等。
本次更新是一个大版本更新,更新点如下:
新增DefaultStreamExcelBuilder流式导出海量数据功能,生产者消费者模式,数据批次构建,配合SXSSF模式(默认)实现真正意义上的海量数据导出;
@ExcelTable新增useFieldNameAsTitle属性,默认为false,允许使用字段名字作为标题;
@ExcelColumn新增分组属性,允许DefaultExcelBuilder传入分组字段,字段动态选择性导出;
缓存由LinkedHashMap修改为WeakHashMap,降低内存占用导致的可能的问题;
修正表格因字体大小、加粗导致的自适应宽度失效问题;
修改DefaultExcelBuilder字段格式化方式;
修正DefaultExcelBuilder构建Excel数据为空时无法导出标题问题;
修正DefaultExcelBuilder设置条件限制不严格问题;
修正模板文件路径必须包含“/”问题,允许只提供文件名称;
优化GroovyExcelBuilder设置模板流程,解决模板文件路径可能误加“/”导致的无法找到模板问题;
优化ExcelBuilder的build接口参数,不强制要求参数类型为Map<String,Object>,参数改为Map<String,T>;
项目基础模块重构,完善接口;
example项目中示例重构,更清晰、完整;
更多详情请参见使用文档:https://github.com/liaochong/html2excel/wiki
本次更新主要实现生产者消费者模式导出以及示例优化,对于默认样式等也做了微调,以给出更好的用户体验,欢迎大家使用!
限于能力,有不足的地方还请各位不吝赐教:
Issue:https://github.com/liaochong/html2excel/issues