springboot实现excel导入导出
时间: 2023-04-29 22:02:35 浏览: 191
Spring Boot可以通过使用Apache POI库来实现Excel的导入和导出。以下是实现步骤:
1. 添加依赖
在pom.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. 实现导出
创建一个ExcelUtil类,实现导出功能。以下是示例代码:
```
public class ExcelUtil {
public static void export(List<User> userList, OutputStream outputStream) throws IOException {
XSSFWorkbook workbook = new XSSFWorkbook();
XSSFSheet sheet = workbook.createSheet("User List");
// 创建表头
XSSFRow headerRow = sheet.createRow();
headerRow.createCell().setCellValue("ID");
headerRow.createCell(1).setCellValue("Name");
headerRow.createCell(2).setCellValue("Age");
// 填充数据
int rowNum = 1;
for (User user : userList) {
XSSFRow row = sheet.createRow(rowNum++);
row.createCell().setCellValue(user.getId());
row.createCell(1).setCellValue(user.getName());
row.createCell(2).setCellValue(user.getAge());
}
// 输出Excel文件
workbook.write(outputStream);
workbook.close();
}
}
```
3. 实现导入
创建一个ExcelUtil类,实现导入功能。以下是示例代码:
```
public class ExcelUtil {
public static List<User> importFile(InputStream inputStream) throws IOException {
List<User> userList = new ArrayList<>();
XSSFWorkbook workbook = new XSSFWorkbook(inputStream);
XSSFSheet sheet = workbook.getSheetAt();
// 读取数据
for (int i = 1; i <= sheet.getLastRowNum(); i++) {
XSSFRow row = sheet.getRow(i);
User user = new User();
user.setId((int) row.getCell().getNumericCellValue());
user.setName(row.getCell(1).getStringCellValue());
user.setAge((int) row.getCell(2).getNumericCellValue());
userList.add(user);
}
workbook.close();
return userList;
}
}
```
以上就是使用Spring Boot实现Excel导入导出的步骤。
阅读全文