springboot读取excel文件
时间: 2023-04-18 19:01:15 浏览: 402
Spring Boot 通过使用 Apache POI 库来读取 Excel 文件。首先,需要在项目的 pom.xml 文件中添加 POI 的依赖。然后,可以使用 POI 提供的 API 来读取 Excel 文件中的数据。有关详细信息,可以参考 Apache POI 的官方文档。
相关问题
编写使用SpringBoot读取Excel文件的代码
可以使用Apache POI来读取Excel文件,以下是使用SpringBoot和Apache POI的代码示例:
```
@Autowired
private ResourceLoader resourceLoader;
@GetMapping("/readExcel")
public List<MyData> readExcel() throws IOException {
List<MyData> dataList = new ArrayList<>();
Resource resource = resourceLoader.getResource("classpath:mydata.xlsx");
try (InputStream inputStream = resource.getInputStream()) {
Workbook workbook = new XSSFWorkbook(inputStream);
Sheet sheet = workbook.getSheetAt(0);
Iterator<Row> iterator = sheet.iterator();
while (iterator.hasNext()) {
Row nextRow = iterator.next();
Iterator<Cell> cellIterator = nextRow.cellIterator();
MyData data = new MyData();
while (cellIterator.hasNext()) {
Cell nextCell = cellIterator.next();
int columnIndex = nextCell.getColumnIndex();
switch (columnIndex) {
case 0:
data.setId((long) nextCell.getNumericCellValue());
break;
case 1:
data.setName(nextCell.getStringCellValue());
break;
case 2:
data.setAge((int) nextCell.getNumericCellValue());
break;
}
}
dataList.add(data);
}
workbook.close();
}
return dataList;
}
```
这个代码将读取位于 classpath 中的名为 mydata.xlsx 的 Excel 文件,并返回一个包含 MyData 对象的列表。详细的解释可以参考注释。
springboot读取excel表格
Spring Boot可以使用Apache POI库来读取Excel表格。首先需要在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>
```
然后可以使用以下代码来读取Excel表格:
```
public List<List<String>> readExcel(String filePath) throws IOException {
List<List<String>> result = new ArrayList<>();
FileInputStream inputStream = new FileInputStream(new File(filePath));
Workbook workbook = new XSSFWorkbook(inputStream);
Sheet sheet = workbook.getSheetAt();
for (Row row : sheet) {
List<String> rowList = new ArrayList<>();
for (Cell cell : row) {
rowList.add(cell.getStringCellValue());
}
result.add(rowList);
}
workbook.close();
inputStream.close();
return result;
}
```
其中,filePath为Excel文件的路径,result为读取结果,每个元素为一行数据,每行数据为一个字符串列表。需要注意的是,这里只读取了第一个Sheet的数据,如果需要读取其他Sheet,需要修改getSheetAt()方法的参数。
阅读全文