diff --git a/easypoi-annotation/src/main/java/org/jeecgframework/poi/excel/annotation/Excel.java b/easypoi-annotation/src/main/java/org/jeecgframework/poi/excel/annotation/Excel.java
index cdbea62..7e1be99 100644
--- a/easypoi-annotation/src/main/java/org/jeecgframework/poi/excel/annotation/Excel.java
+++ b/easypoi-annotation/src/main/java/org/jeecgframework/poi/excel/annotation/Excel.java
@@ -112,4 +112,10 @@ public @interface Excel {
* @return
*/
public boolean isStatistics() default false;
+
+ /**
+ * 冰冻列
+ * @return
+ */
+ public boolean isFreeze() default false;
}
diff --git a/easypoi-base/pom.xml b/easypoi-base/pom.xml
index 0aadc81..dc00e9b 100644
--- a/easypoi-base/pom.xml
+++ b/easypoi-base/pom.xml
@@ -27,7 +27,7 @@
xerces
- xerces
+ xercesImpl
diff --git a/easypoi-base/src/main/java/org/jeecgframework/poi/excel/entity/params/ExcelExportEntity.java b/easypoi-base/src/main/java/org/jeecgframework/poi/excel/entity/params/ExcelExportEntity.java
index acd31e5..733f510 100644
--- a/easypoi-base/src/main/java/org/jeecgframework/poi/excel/entity/params/ExcelExportEntity.java
+++ b/easypoi-base/src/main/java/org/jeecgframework/poi/excel/entity/params/ExcelExportEntity.java
@@ -58,6 +58,10 @@ public class ExcelExportEntity extends ExcelBaseEntity {
* 统计
*/
private boolean isStatistics;
+ /**
+ * 统计
+ */
+ private boolean isFreeze;
private List list;
@@ -184,4 +188,12 @@ public class ExcelExportEntity extends ExcelBaseEntity {
this.isStatistics = isStatistics;
}
+ public boolean isFreeze() {
+ return isFreeze;
+ }
+
+ public void setFreeze(boolean isFreeze) {
+ this.isFreeze = isFreeze;
+ }
+
}
diff --git a/easypoi-base/src/main/java/org/jeecgframework/poi/excel/export/ExcelExportServer.java b/easypoi-base/src/main/java/org/jeecgframework/poi/excel/export/ExcelExportServer.java
index 4fbf792..25e8517 100644
--- a/easypoi-base/src/main/java/org/jeecgframework/poi/excel/export/ExcelExportServer.java
+++ b/easypoi-base/src/main/java/org/jeecgframework/poi/excel/export/ExcelExportServer.java
@@ -140,6 +140,11 @@ public class ExcelExportServer extends ExcelExportBase {
break;
}
mergeCells(sheet, excelParams, titleHeight);
+ for (int i = 0; i < excelParams.size(); i++) {
+ if (excelParams.get(i).isFreeze()) {
+ sheet.createFreezePane(i + 1, 0, i + 1, 0);
+ }
+ }
its = dataSet.iterator();
for (int i = 0, le = tempList.size(); i < le; i++) {
diff --git a/easypoi-base/src/main/java/org/jeecgframework/poi/excel/export/base/ExportBase.java b/easypoi-base/src/main/java/org/jeecgframework/poi/excel/export/base/ExportBase.java
index c23f87c..31e21d5 100644
--- a/easypoi-base/src/main/java/org/jeecgframework/poi/excel/export/base/ExportBase.java
+++ b/easypoi-base/src/main/java/org/jeecgframework/poi/excel/export/base/ExportBase.java
@@ -204,6 +204,7 @@ public class ExportBase {
excelEntity.setFormat(StringUtils.isNotEmpty(excel.exportFormat()) ? excel.exportFormat()
: excel.format());
excelEntity.setStatistics(excel.isStatistics());
+ excelEntity.setFreeze(excel.isFreeze());
String fieldname = field.getName();
excelEntity.setMethod(POIPublicUtil.getMethod(fieldname, pojoClass));
}
diff --git a/easypoi-test/.classpath b/easypoi-test/.classpath
index cd3f839..ef4a7ce 100644
--- a/easypoi-test/.classpath
+++ b/easypoi-test/.classpath
@@ -1,13 +1,13 @@
-
+
-
+
@@ -22,5 +22,5 @@
-
+
diff --git a/easypoi-test/src/main/java/org/jeecgframework/poi/test/entity/MsgClient.java b/easypoi-test/src/main/java/org/jeecgframework/poi/test/entity/MsgClient.java
index ec046a0..56f1687 100644
--- a/easypoi-test/src/main/java/org/jeecgframework/poi/test/entity/MsgClient.java
+++ b/easypoi-test/src/main/java/org/jeecgframework/poi/test/entity/MsgClient.java
@@ -18,7 +18,7 @@ public class MsgClient implements java.io.Serializable {
/** id */
private java.lang.String id;
// 电话号码(主键)
- @Excel(name = "电话号码")
+ @Excel(name = "电话号码", isFreeze = true)
private String clientPhone = null;
// 客户姓名
@Excel(name = "姓名")
diff --git a/easypoi-test/src/main/java/org/jeecgframework/poi/test/entity/TeacherEntity.java b/easypoi-test/src/main/java/org/jeecgframework/poi/test/entity/TeacherEntity.java
index ee38a42..e3b7d26 100644
--- a/easypoi-test/src/main/java/org/jeecgframework/poi/test/entity/TeacherEntity.java
+++ b/easypoi-test/src/main/java/org/jeecgframework/poi/test/entity/TeacherEntity.java
@@ -18,7 +18,7 @@ public class TeacherEntity implements java.io.Serializable {
@Excel(name = "老师ID_teacherEntity,老师属性_courseEntity", orderNum = "2", needMerge = false)
private String id;
/** name */
- @Excel(name = "语文老师_yuwen,数学老师_shuxue", orderNum = "2", mergeVertical = true)
+ @Excel(name = "语文老师_yuwen,数学老师_shuxue", orderNum = "2", mergeVertical = true, isFreeze = true)
private String name;
/*
diff --git a/easypoi-test/src/main/java/org/jeecgframework/poi/test/excel/test/ExcelExportMsgClient.java b/easypoi-test/src/main/java/org/jeecgframework/poi/test/excel/test/ExcelExportMsgClient.java
index e2c12f8..1b07a9c 100644
--- a/easypoi-test/src/main/java/org/jeecgframework/poi/test/excel/test/ExcelExportMsgClient.java
+++ b/easypoi-test/src/main/java/org/jeecgframework/poi/test/excel/test/ExcelExportMsgClient.java
@@ -5,12 +5,14 @@ import static org.junit.Assert.*;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
+import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import org.apache.poi.ss.usermodel.Workbook;
import org.jeecgframework.poi.excel.ExcelExportUtil;
+import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecgframework.poi.excel.entity.ExportParams;
import org.jeecgframework.poi.excel.entity.enmus.ExcelType;
import org.jeecgframework.poi.excel.entity.vo.PoiBaseConstants;
@@ -28,6 +30,12 @@ public class ExcelExportMsgClient {
@Test
public void test() throws Exception {
+ Field[] fields = MsgClient.class.getFields();
+ for (int i = 0; i < fields.length; i++) {
+ Excel excel = fields[i].getAnnotation(Excel.class);
+ System.out.println(excel);
+ }
+
List list = new ArrayList();
for (int i = 0; i < 50000; i++) {
MsgClient client = new MsgClient();
diff --git a/easypoi-test/src/main/java/org/jeecgframework/poi/test/excel/test/ExcelExportUtilIdTest.java b/easypoi-test/src/main/java/org/jeecgframework/poi/test/excel/test/ExcelExportUtilIdTest.java
index 8b105ae..717decd 100644
--- a/easypoi-test/src/main/java/org/jeecgframework/poi/test/excel/test/ExcelExportUtilIdTest.java
+++ b/easypoi-test/src/main/java/org/jeecgframework/poi/test/excel/test/ExcelExportUtilIdTest.java
@@ -70,7 +70,6 @@ public class ExcelExportUtilIdTest {
@Test
public void testExportExcel() throws Exception {
ExportParams params = new ExportParams("2412312", "测试", "测试");
- params.setAddIndex(true);
Workbook workbook = ExcelExportUtil.exportExcel(params, CourseEntity.class, list);
FileOutputStream fos = new FileOutputStream("d:/tt.xls");
workbook.write(fos);
diff --git a/pom.xml b/pom.xml
index 01c34d4..bae49d1 100644
--- a/pom.xml
+++ b/pom.xml
@@ -26,7 +26,7 @@
2.0.8-SNAPSHOT
3.9
- 2.4.0
+ 2.9.1
16.0.1
2.6
1.6.1
@@ -103,7 +103,7 @@
xerces
- xerces
+ xercesImpl
${xerces.version}