Excel组件 (yudao-spring-boot-starter-excel)
引用文件
目录
简介
本文件全面介绍 yudao-spring-boot-starter-excel Excel 组件,该组件基于 EasyExcel 实现,提供完善的 Excel 导入导出能力,支持流式处理与大数据量优化、字典数据导出与枚举值转换、日期格式处理、模板设计与动态列配置、权限控制等高级特性。组件通过注解驱动的方式简化开发,同时提供丰富的扩展点,包括自定义转换器、样式处理器和性能优化方案。
项目结构
Excel 组件位于 yudao-framework/yudao-spring-boot-starter-excel 模块中,采用按功能域划分的包结构:
- core/annotations:注解定义,如 ExcelColumn、DictFormat、ExcelColumnSelect
- core/convert:数据转换器,如 DictConvert、AreaConvert、JsonConvert、MoneyConvert
- core/listeners:监听器与匹配器,如 AnnotationBasedExcelListener、AdaptiveFieldMatcher
- core/handler:写入处理器,如 SelectSheetWriteHandler
- core/function:功能函数,如 ExcelColumnSelectFunction
- core/enums:枚举定义,如 NamingMatchStrategy
图表来源
章节来源
- ExcelColumn.java
- DictFormat.java
- DictConvert.java
- AreaConvert.java
- AnnotationBasedExcelListener.java
核心组件
本节深入分析 Excel 组件的关键组件及其职责:
注解体系
- ExcelColumn:Excel 导入注解,支持多种命名匹配策略
- DictFormat:字典格式化注解,实现字典值与标签的双向转换
- ExcelColumnSelect:为 Excel 列添加下拉选择数据
数据转换器
- DictConvert:字典数据转换器,支持字典值与标签的互转
- AreaConvert:地区数据转换器,处理地区编号与名称的转换
- JsonConvert:JSON 数据转换器,处理复杂对象序列化
- MoneyConvert:金额转换器,处理货币格式化
监听器与匹配器
- AnnotationBasedExcelListener:基于注解的 Excel 导入监听器
- AdaptiveFieldMatcher:自适应字段匹配器
章节来源
- ExcelColumn.java
- DictFormat.java
- DictConvert.java
- AreaConvert.java
- AnnotationBasedExcelListener.java
架构概览
Excel 组件采用分层架构设计,通过注解驱动和监听器模式实现高效的数据处理:
图表来源