开发当中,Excel 导入导出和 PDF 报表差不多是绕不开的需求。用 Spring Boot 搭一套 Apache POI 和 JasperReports 的组合,能解决大部分场景,虽然算不上多惊艳,但胜在稳定。下面是我自己用过之后整理的实现方式。
一、用 Apache POI 处理 Excel
Excel 导入导出的核心是文件流解析和对象映射。我习惯先用一个简单的实体,再让服务层去读取或生成工作簿。
1. 引入依赖
pom.xml 里加 Web、JPA 和 POI 就好。测试时用 H2 内存库比较省事。
<dependencies>
<!-- Web -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- Data JPA -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<!-- H2 数据库(测试用) -->
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<scope>runtime</scope>
</dependency>
<!-- Apache POI -->
org.apache.poi
poi
4.1.2
org.apache.poi
poi-ooxml
4.1.2
org.springframework.boot
spring-boot-starter-test
test


