首页 文章 精选 留言 我的

精选列表

搜索[对象列表],共10008篇文章
优秀的个人博客,低调大师

MyExcel 3.6.0 版本发布,支持列表&模板混合导出

MyExcel,是一个集导入、导出、加密Excel等多项功能的Java工具包。 MyExcel采用声明式语法来构建、读取Excel,屏蔽POI的具体操作细节(对POI无感知),以开发常用的技术替代,使得构建(从简单到高度复杂Excel)以及读取Excel变得极为便利,且构建、读取性能极为优异,占用内存极低(具体,请移步参考MyExcel&阿里EasyExcel性能对比)。 如导入: List<ArtCrowd> result = SaxExcelReader.of(ArtCrowd.class) .sheet(0) // 0代表第一个,如果为0,可省略该操作,也可sheet("名称")读取 .rowFilter(row -> row.getRowNum() > 0) // 如无需过滤,可省略该操作,0代表第一行 .beanFilter(ArtCrowd::isDance) // bean过滤 .read(path.toFile()); 本次更新如下: 重构模板构建器ExcelBuilder,使用TemplateHandler处理模板解析; DefaultStreamExcelBuilder支持模板追加; 新增MyExcelConfiguration,支持对MyExcel进行全局设置,如自定义临时文件目录; 优化ExcelBuilder资源处理,提升模板构建效率; 重命名@ExcelModel等注解对应配置类名称,易于理解; 优化单元测试文件存放目录,避免clone后无法直接执行单元测试问题; 在某些情况下,可能需要个性化的表头,或者汇总等等,这些需求可能会涉及合并行、列、样式等复杂布局,而且导出的数据可能又比较大,DefaultStreamExcelBuilder本身对Bean的能力不足以支撑复杂布局,为兼容海量数据导出与复杂布局,版本3.6.0以及以后,DefaultStreamExcelBuilder支持模板的追加,在模板中定义复杂布局,追加模板方式如下 代码示例: try (DefaultStreamExcelBuilder<ArtCrowd> streamExcelBuilder = DefaultStreamExcelBuilder .of(ArtCrowd.class) .templateHandler(FreemarkerTemplateHandler.class)// 追加模板数据,可选,适合极度个性化数据导出 .start()) { // 模板数据追加 Map<String,Object> dataMap = this.getDataMap(); streamExcelBuilder.append("/templates/test.ftl", dataMap); // 普通数据追加 List<ArtCrowd> dataList = this.getDataList(); streamExcelBuilder.append(dataList); // 最终构建 Workbook workbook = defaultExcelBuilder.build(); AttachmentExportUtil.export(workbook, "艺术生信息", response); } 首先,需要指定模板处理器:templateHandler(FreemarkerTemplateHandler.class),除FreemarkerTemplateHandler,还有BeetlTemplateHandler、EnjoyTemplateHandler、ThymeleafTemplateHandler等其他5种常用模板处理器; 其次,使用append方法追加模板数据,该方法接受相对路径以及绝对路径模板,绝对路径方式如下: append("C:/User/project/templates","test.ftl",dataMap); 最终效果如下: 具体,请移步文档,参见流式导出部分:文档

优秀的个人博客,低调大师

Python基础系列-列表交集并集差集

版权声明:如需转载,请注明转载地址。 https://blog.csdn.net/oJohnny123/article/details/81979449 比如,现在有两个list类型: a = [1,2,3,4] b = [1,2,3] 一. 差集 很明显结果是[4],下面我们说一下具体方法。 ret_list = [item for item in a if item not in b] 还有一种方法 ret_list = list(set(a)^set(b)) 二. 并集 很明显结果是[1,2,3,4],下面是具体方法: ret_list = list(set(a).union(set(b))) 三. 交集 很明显结果是[1,2,3],下面是具体方法: ret_list = list((set(a).union(set(b)))^(set(a)^set(b)))

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册