apachepoi 操作excle表格信息提取在Controller实现
时间: 2024-04-30 14:18:46 浏览: 96
在 Controller 中使用 Apache POI 操作 Excel 表格可以按照以下步骤进行:
1. 导入 Apache POI 的依赖包。可以通过 Maven 或 Gradle 等工具进行导入。
2. 创建一个 Java 类,该类中定义一个方法用于读取 Excel 表格中的数据。
```java
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.ss.usermodel.WorkbookFactory;
public class ExcelReader {
public void readExcel(String filePath) throws IOException {
// 创建文件输入流
FileInputStream inputStream = new FileInputStream(new File(filePath));
// 创建工作簿
Workbook workbook = WorkbookFactory.create(inputStream);
// 获取第一个工作表
Sheet sheet = workbook.getSheetAt(0);
// 遍历工作表中的每一行和每一列
for (Row row : sheet) {
for (Cell cell : row) {
// 获取单元格的值
String cellValue = cell.getStringCellValue();
// 输出单元格的值
System.out.print(cellValue + "\t");
}
System.out.println();
}
// 关闭工作簿和输入流
workbook.close();
inputStream.close();
}
}
```
3. 在 Controller 中调用该方法,传入 Excel 表格的文件路径即可实现操作。
```java
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
@RequestMapping("/excel")
public class ExcelController {
@GetMapping("/read")
@ResponseBody
public void readExcel() throws IOException {
String filePath = "path/to/excel/file.xlsx";
ExcelReader reader = new ExcelReader();
reader.readExcel(filePath);
}
}
```
需要注意的是,在使用 Apache POI 操作 Excel 表格时,需要根据 Excel 文件的格式选择不同的 API,如 HSSF(适用于 Excel 2003 及以前的版本)和 XSSF(适用于 Excel 2007 及以后的版本)。同时,还需要注意关闭工作簿和输入流,避免资源泄漏。
阅读全文