Java的Apache POI使用实体类导出
时间: 2023-07-20 18:35:01 浏览: 115
好的,针对Java的Apache POI使用实体类导出,我们可以通过以下步骤来实现:
1. 首先,我们需要在pom.xml文件中添加Apache POI的依赖,例如:
```xml
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>3.17</version>
</dependency>
```
2. 然后,我们需要定义一个实体类来存储需要导出的数据,例如:
```java
public class User {
private String username;
private Integer age;
// getter/setter 略
}
```
3. 接下来,我们需要创建一个工具类来实现Excel导出的功能,例如:
```java
public class ExcelUtils {
public static void exportUsersToExcel(List<User> userList, OutputStream outputStream) throws IOException {
// 创建工作簿
Workbook workbook = new HSSFWorkbook();
// 创建工作表
Sheet sheet = workbook.createSheet("用户列表");
// 创建标题行
Row titleRow = sheet.createRow(0);
titleRow.createCell(0).setCellValue("用户名");
titleRow.createCell(1).setCellValue("年龄");
// 创建数据行
int rowIndex = 1;
for (User user : userList) {
Row dataRow = sheet.createRow(rowIndex++);
dataRow.createCell(0).setCellValue(user.getUsername());
dataRow.createCell(1).setCellValue(user.getAge());
}
// 输出Excel文件
workbook.write(outputStream);
workbook.close();
}
}
```
4. 最后,我们可以在Controller中调用工具类来实现Excel导出,例如:
```java
@GetMapping("/export")
public void exportUsers(HttpServletResponse response) throws IOException {
List<User> userList = userService.listUsers();
response.setContentType("application/vnd.ms-excel");
response.setHeader("Content-Disposition", "attachment;filename=users.xls");
ExcelUtils.exportUsersToExcel(userList, response.getOutputStream());
}
```
通过以上步骤,我们就可以使用Java的Apache POI和实体类来实现Excel导出的功能了。
阅读全文