EasyExcel实现多层表头:注解与列表两种方式详解
在复杂报表场景中,多层表头(如 “基础信息” 包含 “姓名”“手机号” 等子列)能更清晰地组织数据。EasyExcel 提供了简洁的 API 支持多层表头,本文将详细讲解两种实现方式(注解方式和列表方式),并对比其适用场景,帮助你快速实现类似 Excel 数据透视表的表头结构。
多层表头的核心原理
多层表头本质是多级列标题的合并与嵌套,例如 “基础信息” 作为一级标题,其下包含 “姓名”“手机号” 等二级标题。EasyExcel 通过以下方式实现:
- 层级定义:用数组或列表的嵌套结构表示表头层级(如
{"基础信息", "姓名"}表示两级表头); - 自动合并:相同的上级标题会自动合并单元格(如 “基础信息” 会跨列合并其所有子列)。
环境准备
引入 EasyExcel 依赖(兼容 2.x 和 3.x 版本):
1 | <dependency> |
实现方式详解
注解方式(推荐用于固定表头)
通过 @ExcelProperty 注解的 value 属性定义多层表头,适用于表头结构固定的场景(如实体类与表头一一对应)。
定义实体类
在实体类的字段上使用 @ExcelProperty(value = {一级标题, 二级标题, ...}) 定义多层表头: