将 class 的数组列表写入 excel java
Writing arraylist of a class in to excel java
我从 db 收到一个 Arraylist,我需要将它写入 Excel sheet。
收到的数据: Arraylist 。我还需要维持秩序。我将在设置为 excel 时处理数据类型。
GDTPolicy Class 有大约 90 个属性。如何遍历 GDTPolicy 并将数据设置为 excel?或者我需要从数据库导出不同的数据类型吗?
.欢迎提出任何建议
ArrayList<GDTPolicy> data= gdtRepository.fetchbyDate();
Workbook book = new XSSFWorkbook();
org.apache.poi.ss.usermodel.Sheet sheet = book.createSheet("Quotation");
for (int i = 0; i < data.size(); i++) {
ArrayList<String> rows = excelData.get(i);
// GDTPolicy= data.get(i);
Row row = sheet.createRow(i);
for (int j = 0; j < rows.size(); j++) {
Cell data = row.createCell(j);
data.setCellValue(rows.get(j));
}
}
如果您不想为每个属性设置 cell.setValue,您可以选择使用反射,如下所示:
Field [] fields = rows.get(j).getClass().GetDeclaredFields();
int countField = 0;
for (Field field : fields){
Cell data = row.createCell(countField);
data.setCellValue(field.get(rows.get(j)));
countField = countField +1;
}
我从 db 收到一个 Arraylist,我需要将它写入 Excel sheet。 收到的数据: Arraylist 。我还需要维持秩序。我将在设置为 excel 时处理数据类型。 GDTPolicy Class 有大约 90 个属性。如何遍历 GDTPolicy 并将数据设置为 excel?或者我需要从数据库导出不同的数据类型吗? .欢迎提出任何建议
ArrayList<GDTPolicy> data= gdtRepository.fetchbyDate();
Workbook book = new XSSFWorkbook();
org.apache.poi.ss.usermodel.Sheet sheet = book.createSheet("Quotation");
for (int i = 0; i < data.size(); i++) {
ArrayList<String> rows = excelData.get(i);
// GDTPolicy= data.get(i);
Row row = sheet.createRow(i);
for (int j = 0; j < rows.size(); j++) {
Cell data = row.createCell(j);
data.setCellValue(rows.get(j));
}
}
如果您不想为每个属性设置 cell.setValue,您可以选择使用反射,如下所示:
Field [] fields = rows.get(j).getClass().GetDeclaredFields();
int countField = 0;
for (Field field : fields){
Cell data = row.createCell(countField);
data.setCellValue(field.get(rows.get(j)));
countField = countField +1;
}