springboot导出Excel
时间: 2023-10-17 13:12:23 浏览: 91
springboot导出excel
5星 · 资源好评率100%
要在Spring Boot中导出Excel文件,可以使用Apache POI库。以下是一些基本步骤:
1. 添加POI依赖项。在pom.xml文件中,添加以下依赖项:
```xml
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>4.1.2</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>4.1.2</version>
</dependency>
```
2. 创建Excel文件。使用POI库创建一个Excel文件,并添加一个或多个工作表。
```java
Workbook workbook = new XSSFWorkbook();
Sheet sheet = workbook.createSheet("Sheet1");
// 添加表头
Row headerRow = sheet.createRow(0);
headerRow.createCell(0).setCellValue("ID");
headerRow.createCell(1).setCellValue("Name");
headerRow.createCell(2).setCellValue("Age");
// 添加数据
Row dataRow = sheet.createRow(1);
dataRow.createCell(0).setCellValue(1);
dataRow.createCell(1).setCellValue("John");
dataRow.createCell(2).setCellValue(25);
```
3. 将Excel文件写入输出流。使用Java IO将Excel文件写入输出流,以便用户可以下载文件。
```java
response.setContentType("application/vnd.ms-excel");
response.setHeader("Content-Disposition", "attachment; filename=data.xlsx");
OutputStream outputStream = response.getOutputStream();
workbook.write(outputStream);
workbook.close();
outputStream.flush();
```
完整的示例代码如下:
```java
@GetMapping("/export")
public void exportToExcel(HttpServletResponse response) throws IOException {
// 创建Excel文件
Workbook workbook = new XSSFWorkbook();
Sheet sheet = workbook.createSheet("Sheet1");
// 添加表头
Row headerRow = sheet.createRow(0);
headerRow.createCell(0).setCellValue("ID");
headerRow.createCell(1).setCellValue("Name");
headerRow.createCell(2).setCellValue("Age");
// 添加数据
Row dataRow = sheet.createRow(1);
dataRow.createCell(0).setCellValue(1);
dataRow.createCell(1).setCellValue("John");
dataRow.createCell(2).setCellValue(25);
// 写入输出流
response.setContentType("application/vnd.ms-excel");
response.setHeader("Content-Disposition", "attachment; filename=data.xlsx");
OutputStream outputStream = response.getOutputStream();
workbook.write(outputStream);
workbook.close();
outputStream.flush();
}
```
在浏览器中访问该URL,即可下载生成的Excel文件。
阅读全文