From bfe51f9c2ce2181fee372ed5f9017c7af59cc896 Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期一, 01 九月 2025 12:49:55 +0800
Subject: [PATCH] 1
---
zy-acs-manager/src/main/java/com/zy/acs/manager/common/utils/ExcelUtil.java | 61 ++++++++++++++++++++++++++++++
1 files changed, 61 insertions(+), 0 deletions(-)
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/common/utils/ExcelUtil.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/common/utils/ExcelUtil.java
index f7f47b6..43ec024 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/common/utils/ExcelUtil.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/common/utils/ExcelUtil.java
@@ -6,6 +6,7 @@
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.xssf.usermodel.XSSFWorkbook;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
@@ -92,4 +93,64 @@
+ public static <T> Workbook createXlsx(List<T> list, Class<T> clz) {
+ //HSSFWorkbook workbook = new HSSFWorkbook();
+ XSSFWorkbook workbook =new XSSFWorkbook();
+ Sheet sheet = workbook.createSheet(clz.getSimpleName());
+
+ Row header = sheet.createRow(0);
+ Field[] fields = Cools.getAllFields(clz);
+ int headerIdx = 0;
+ for (Field field : fields) {
+ if (Modifier.isFinal(field.getModifiers())
+ || Modifier.isStatic(field.getModifiers())
+ || Modifier.isTransient(field.getModifiers())) {
+ continue;
+ }
+ String memo = "Undefined";
+ if (field.isAnnotationPresent(ApiModelProperty.class)) {
+ memo = field.getAnnotation(ApiModelProperty.class).value();
+ }
+ header.createCell(headerIdx).setCellValue(memo);
+ headerIdx++;
+ }
+
+ int rowIndex = 1;
+ for (T t : list) {
+ Row row = sheet.createRow(rowIndex++);
+
+ int cellIndex = 0;
+ for (Field field : fields) {
+ if (Modifier.isFinal(field.getModifiers())
+ || Modifier.isStatic(field.getModifiers())
+ || Modifier.isTransient(field.getModifiers())) {
+ continue;
+ }
+
+ field.setAccessible(true); // 姝よ寰堥噸瑕侊紝鐗瑰埆鏄瓧娈典负private鏃�
+ Object value = null;
+ try {
+ value = field.get(t);
+ } catch (IllegalAccessException e) {
+ e.printStackTrace();
+ }
+ if (value != null) {
+ if (value instanceof Date) {
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+ row.createCell(cellIndex).setCellValue(sdf.format((Date) value));
+ } else {
+ row.createCell(cellIndex).setCellValue(value.toString());
+ }
+ }
+ cellIndex++;
+ }
+ }
+
+ for (int i = 0; i <= fields.length; i++) {
+ sheet.autoSizeColumn(i);
+ }
+
+ return workbook;
+ }
+
}
--
Gitblit v1.9.1