diff --git a/pom.xml b/pom.xml
index c316181..12c112c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -172,7 +172,7 @@
com.dtflys.forest
- forest-spring-boot-starter
+ forest-spring-boot3-starter
1.5.36
diff --git a/src/main/java/com/muyu/common/core/annotation/Excel.java b/src/main/java/com/muyu/common/core/annotation/Excel.java
index 36180e5..eb7928a 100644
--- a/src/main/java/com/muyu/common/core/annotation/Excel.java
+++ b/src/main/java/com/muyu/common/core/annotation/Excel.java
@@ -148,6 +148,16 @@ public @interface Excel {
*/
Type type () default Type.ALL;
+ /**
+ * 可执行的反射方法值为1个
+ */
+ public String invokeMethod() default "";
+
+ /**
+ * 可执行的反射类 从SpringIoc容器当中取值
+ */
+ public Class> invokeClass() default String.class;
+
public enum Type {
ALL(0), EXPORT(1), IMPORT(2);
private final int value;
diff --git a/src/main/java/com/muyu/common/core/utils/poi/ExcelUtils.java b/src/main/java/com/muyu/common/core/utils/poi/ExcelUtils.java
new file mode 100644
index 0000000..41ce85a
--- /dev/null
+++ b/src/main/java/com/muyu/common/core/utils/poi/ExcelUtils.java
@@ -0,0 +1,810 @@
+package com.muyu.common.core.utils.poi;
+
+
+
+import com.muyu.common.core.annotation.Excel;
+import com.muyu.common.core.annotation.Excel.ColumnType;
+import com.muyu.common.core.annotation.Excel.Type;
+import com.muyu.common.core.annotation.Excels;
+import com.muyu.common.core.exception.UtilException;
+import com.muyu.common.core.text.Convert;
+import com.muyu.common.core.utils.DateUtils;
+import com.muyu.common.core.utils.SpringUtils;
+import com.muyu.common.core.utils.StringUtils;
+import com.muyu.common.core.utils.file.FileTypeUtils;
+import com.muyu.common.core.utils.file.ImageUtils;
+import com.muyu.common.core.utils.reflect.ReflectUtils;
+import lombok.extern.log4j.Log4j2;
+import org.apache.commons.lang3.ArrayUtils;
+import org.apache.commons.lang3.RegExUtils;
+import org.apache.commons.lang3.reflect.FieldUtils;
+import org.apache.poi.hssf.usermodel.HSSFDateUtil;
+import org.apache.poi.ss.usermodel.*;
+import org.apache.poi.ss.util.CellRangeAddress;
+import org.apache.poi.ss.util.CellRangeAddressList;
+import org.apache.poi.util.IOUtils;
+import org.apache.poi.xssf.streaming.SXSSFWorkbook;
+import org.apache.poi.xssf.usermodel.XSSFClientAnchor;
+import org.apache.poi.xssf.usermodel.XSSFDataValidation;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import jakarta.servlet.http.HttpServletResponse;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.io.*;
+import java.lang.reflect.Field;
+import java.lang.reflect.Method;
+import java.lang.reflect.ParameterizedType;
+import java.math.BigDecimal;
+import java.text.DecimalFormat;
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+import java.util.*;
+import java.util.stream.Collectors;
+
+/**
+ * Excel相关处理
+ */
+@Log4j2
+public class ExcelUtils
+{
+
+ /**
+ * Excel sheet最大行数,默认65536
+ */
+ public static final int SHEET_SIZE = 65536;
+
+ /**
+ * 工作表名称
+ */
+ private String sheetName;
+
+ /**
+ * 导出类型(EXPORT:导出数据;IMPORT:导入模板)
+ */
+ private Type type;
+
+ /**
+ * 工作薄对象
+ */
+ private Workbook wb;
+
+ /**
+ * 工作表对象
+ */
+ private Sheet sheet;
+
+ /**
+ * 样式列表
+ */
+ private Map styles;
+
+ /**
+ * 导入导出数据列表
+ */
+ private List list;
+
+ /**
+ * 注解列表
+ */
+ private List