MyExcel 是一个集导入、导出、加密 Excel 等多项功能的 Java 工具包。 
本次更新主要是BUG修复,更新点如下: 
- 修复追加sheet的数据为空时导致的追加失败问题;
 - 修复追加sheet导致的原配置失效问题;
 - 修复使用@ExcelTable导致的静态字段被导出问题,默认静态字段不被导出,也可通过ignoreStaticFields=false取消;
 - 修改使用同一类类型,sheet名称无法自增长问题;
 - 修复选择自动列宽设置错误问题;
 - 修复设置workbook类型部分情况下不生效问题;
 - 修复DefaultStreamExcelBuilder无法直接固定标题行问题;
 - 新增DefaultExcelBuilder\DefaultStreamExcelBuilder自动换行,默认为true,可通过@ExcelTable中wrapText取消;
 - 修改DefaultExcelBuilder\DefaultStreamExcelBuilder部分数据结构为LinkedList,降低内存要求;
 - 修改快速移除数据逻辑,提升数据处理效率;
 - 优化部分转换操作,避免海里数据列表整体复制;
  
建议所有使用用户尽快升级,更多请移步:https://github.com/liaochong/myexcel/wiki 
-------------------------------------------------------------------------------------- 
优势 | Advantages
- 可生成任意复杂表格:本工具使用迭代单元格方式进行Excel绘制,可生成任意复杂度Excel,提供多种宽度策略;
 - 零学习成本:使用Html作为模板,学习成本几乎为零;
 - 支持常用背景色、边框、字体等样式设置:具体参见下方Style-support(样式支持)部分;
 - 支持.XLS、.XLSX:支持生成.xls、.xlsx后缀的Excel;
 - 支持公式导出:支持Excel模板中设置公式,降低服务端的计算量;
 - 支持低内存SXSSF模式:支持低内存的SXSSF模式,可利用极低的内存生成.xlsx;
 - 支持生产者消费者模式导出:支持生产者消费者模式导出,无需一次性获取所有数据,分批获取数据配合SXSSF模式实现真正意义上海量数据导出;
 - 支持多种模板引擎:已内置Freemarker、Groovy、Beetl、Thymeleaf等常用模板引擎Excel构建器(详情参见文档Getting started),推荐使用Beetl模板引擎(Beetl文档);
 - 提供默认Excel构建器,直接输出简单Excel:无需编写任何Html,已内置默认模板,可直接根据POJO数据列表输出;
 - 支持一次生成多sheet:以table作为sheet单元,支持一份Excel文档中多sheet导出;
  
导入示例: 
URL htmlToExcelEampleURL = this.getClass().getResource("/templates/read_example.xlsx");
Path path = Paths.get(htmlToExcelEampleURL.toURI());
List<ArtCrowd> result = DefaultExcelReader.of(ArtCrowd.class)
        .sheet(0) 
        .rowFilter(row -> row.getRowNum() > 0) 
        .beanFilter(ArtCrowd::isDance) 
        .read(path.toFile());
 
导出示例: 
@GetMapping("/default/excel/example")
public void defaultBuild(HttpServletResponse response) throws Exception {
    List<ArtCrowd> dataList = this.getDataList();
    Workbook workbook = DefaultExcelBuilder.of(ArtCrowd.class)
            .build(dataList);
    AttachmentExportUtil.export(workbook, "艺术生信息", response);
    
} 
效果: 
  
 
  |