皇上,还记得我吗?我就是1999年那个Linux伊甸园啊-----24小时滚动更新开源资讯,全年无休!

MyExcel 2.5.1 版本发布,Bug 修复

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) // 0代表第一个,如果为0,可省略该操作
        .rowFilter(row -> row.getRowNum() > 0) // 如无需过滤,可省略该操作,0代表第一行
        .beanFilter(ArtCrowd::isDance) // bean过滤
        .read(path.toFile());// 可接收inputStream

导出示例:

/**
* 普通方式导出
*/
@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);
    // 加密导出 AttachmentExportUtil.encryptExport(workbook, "艺术生信息", response,"123456");
}

效果:

 

转自 https://www.oschina.net/news/107516/myexcel-2-5-1-released

分享到:更多 ()