Pārlūkot izejas kodu

4.0 第一版发布

4.1.3.A
jueyue pirms 6 gadiem
vecāks
revīzija
c43bd12ca3
12 mainītis faili ar 38 papildinājumiem un 73 dzēšanām
  1. +6
    -6
      README.md
  2. +1
    -1
      easypoi-annotation/pom.xml
  3. +1
    -1
      easypoi-base/pom.xml
  4. +3
    -3
      easypoi-base/src/main/java/cn/afterturn/easypoi/csv/CsvImportUtil.java
  5. +0
    -17
      easypoi-base/src/main/java/cn/afterturn/easypoi/csv/handler/ICsvSaveDataHandler.java
  6. +7
    -4
      easypoi-base/src/main/java/cn/afterturn/easypoi/csv/imports/CsvImportService.java
  7. +3
    -30
      easypoi-base/src/main/java/cn/afterturn/easypoi/excel/ExcelImportUtil.java
  8. +4
    -4
      easypoi-base/src/main/java/cn/afterturn/easypoi/excel/imports/sax/SaxReadExcel.java
  9. +3
    -3
      easypoi-base/src/main/java/cn/afterturn/easypoi/excel/imports/sax/parse/SaxRowRead.java
  10. +7
    -1
      easypoi-base/src/main/java/cn/afterturn/easypoi/handler/inter/IReadHandler.java
  11. +1
    -1
      easypoi-web/pom.xml
  12. +2
    -2
      pom.xml

+ 6
- 6
README.md Parādīt failu

@@ -6,14 +6,14 @@ EasyPoi Excel和 Word简易工具类
就可以方便的写出Excel导出,Excel模板导出,Excel导入,Word模板导出,通过简单的注解和模板
语言(熟悉的表达式语法),完成以前复杂的写法
官网: http://www.afterturn.cn/
官网: http://opensource.afterturn.cn/
邮箱: qrb.jueyue@foxmail.com
QQ群: 1群 364192721(满) 2 群116844390
开发者:魔幻之翼 xf.key@163.com
Spring Boot 支持 https://gitee.com/lemur/easypoi-spring-boot-starter
[官网](http://opensource.afterturn.cn)
[官网](https://opensource.afterturn.cn)
[VIP技术服务-账号忘了,还是QQ吧](https://lemur.taobao.com)
@@ -24,7 +24,7 @@ Spring Boot 支持 https://gitee.com/lemur/easypoi-spring-boot-starter
**开发指南**
**[http://opensource.afterturn.cn/doc/easypoi.html](http://opensource.afterturn.cn/doc/easypoi.html)**
**[https://opensource.afterturn.cn/doc/easypoi.html](http://opensource.afterturn.cn/doc/easypoi.html)**
[API文档](https://apidoc.gitee.com/lemur/easypoi/)
@@ -100,17 +100,17 @@ https://oss.sonatype.org/content/groups/public/
<dependency>
<groupId>cn.afterturn</groupId>
<artifactId>easypoi-base</artifactId>
<version>3.3.0</version>
<version>4.0.0</version>
</dependency>
<dependency>
<groupId>cn.afterturn</groupId>
<artifactId>easypoi-web</artifactId>
<version>3.3.0</version>
<version>4.0.0</version>
</dependency>
<dependency>
<groupId>cn.afterturn</groupId>
<artifactId>easypoi-annotation</artifactId>
<version>3.3.0</version>
<version>4.0.0</version>
</dependency>
```


+ 1
- 1
easypoi-annotation/pom.xml Parādīt failu

@@ -4,7 +4,7 @@
<parent>
<groupId>cn.afterturn</groupId>
<artifactId>easypoi</artifactId>
<version>4.0.0-SNAPSHOT</version>
<version>4.0.0</version>
</parent>
<artifactId>easypoi-annotation</artifactId>
<description>基础注解类,解耦合</description>

+ 1
- 1
easypoi-base/pom.xml Parādīt failu

@@ -4,7 +4,7 @@
<parent>
<groupId>cn.afterturn</groupId>
<artifactId>easypoi</artifactId>
<version>4.0.0-SNAPSHOT</version>
<version>4.0.0</version>
</parent>
<artifactId>easypoi-base</artifactId>
<dependencies>


+ 3
- 3
easypoi-base/src/main/java/cn/afterturn/easypoi/csv/CsvImportUtil.java Parādīt failu

@@ -1,8 +1,8 @@
package cn.afterturn.easypoi.csv;

import cn.afterturn.easypoi.csv.entity.CsvImportParams;
import cn.afterturn.easypoi.csv.handler.ICsvSaveDataHandler;
import cn.afterturn.easypoi.csv.imports.CsvImportService;
import cn.afterturn.easypoi.handler.inter.IReadHandler;

import java.io.InputStream;
import java.util.List;
@@ -40,7 +40,7 @@ public final class CsvImportUtil {
* @return
*/
public static void importCsv(InputStream inputstream, Class<?> pojoClass,
CsvImportParams params, ICsvSaveDataHandler saveDataHandler) {
new CsvImportService().readExcel(inputstream, pojoClass, params, saveDataHandler);
CsvImportParams params, IReadHandler readHandler) {
new CsvImportService().readExcel(inputstream, pojoClass, params, readHandler);
}
}

+ 0
- 17
easypoi-base/src/main/java/cn/afterturn/easypoi/csv/handler/ICsvSaveDataHandler.java Parādīt failu

@@ -1,17 +0,0 @@
package cn.afterturn.easypoi.csv.handler;

/**
* 保存数据
* 鉴于CSV可能都是大数据,还是调用接口直接保存,避免内存占用
*
* @author by jueyue on 18-10-3.
*/
public interface ICsvSaveDataHandler<T> {

/**
* 保存数据
*
* @param t
*/
public void save(T t);
}

+ 7
- 4
easypoi-base/src/main/java/cn/afterturn/easypoi/csv/imports/CsvImportService.java Parādīt failu

@@ -1,7 +1,6 @@
package cn.afterturn.easypoi.csv.imports;

import cn.afterturn.easypoi.csv.entity.CsvImportParams;
import cn.afterturn.easypoi.csv.handler.ICsvSaveDataHandler;
import cn.afterturn.easypoi.excel.annotation.ExcelTarget;
import cn.afterturn.easypoi.excel.entity.params.ExcelCollectionParams;
import cn.afterturn.easypoi.excel.entity.params.ExcelImportEntity;
@@ -11,6 +10,7 @@ import cn.afterturn.easypoi.excel.imports.base.ImportBaseService;
import cn.afterturn.easypoi.exception.excel.ExcelImportException;
import cn.afterturn.easypoi.exception.excel.enums.ExcelImportEnum;
import cn.afterturn.easypoi.handler.inter.IExcelModel;
import cn.afterturn.easypoi.handler.inter.IReadHandler;
import cn.afterturn.easypoi.util.PoiPublicUtil;
import cn.afterturn.easypoi.util.PoiReflectorUtil;
import cn.afterturn.easypoi.util.PoiValidationUtil;
@@ -41,7 +41,7 @@ public class CsvImportService extends ImportBaseService {
this.cellValueServer = new CellValueService();
}

public <T> List<T> readExcel(InputStream inputstream, Class<?> pojoClass, CsvImportParams params, ICsvSaveDataHandler saveDataHandler) {
public <T> List<T> readExcel(InputStream inputstream, Class<?> pojoClass, CsvImportParams params, IReadHandler readHandler) {
List collection = new ArrayList();
try {
Map<String, ExcelImportEntity> excelParams = new HashMap<String, ExcelImportEntity>();
@@ -120,8 +120,8 @@ public class CsvImportService extends ImportBaseService {
addListContinue(object, param, row, titlemap, targetId, params, errorMsg);
}
if (verifyingDataValidity(object, params, pojoClass, errorMsg)) {
if (saveDataHandler != null) {
saveDataHandler.save(object);
if (readHandler != null) {
readHandler.handler(object);
} else {
collection.add(object);
}
@@ -138,6 +138,9 @@ public class CsvImportService extends ImportBaseService {
}
readRow++;
}
if (readHandler != null) {
readHandler.doAfterAll();
}
} catch (Exception e) {
LOGGER.error(e.getMessage(), e);
}


+ 3
- 30
easypoi-base/src/main/java/cn/afterturn/easypoi/excel/ExcelImportUtil.java Parādīt failu

@@ -20,6 +20,7 @@ import java.io.FileInputStream;
import java.io.InputStream;
import java.util.List;
import cn.afterturn.easypoi.handler.inter.IReadHandler;
import org.apache.poi.util.IOUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -28,9 +29,7 @@ import cn.afterturn.easypoi.excel.entity.ImportParams;
import cn.afterturn.easypoi.excel.entity.result.ExcelImportResult;
import cn.afterturn.easypoi.excel.imports.ExcelImportService;
import cn.afterturn.easypoi.excel.imports.sax.SaxReadExcel;
import cn.afterturn.easypoi.excel.imports.sax.parse.ISaxRowRead;
import cn.afterturn.easypoi.exception.excel.ExcelImportException;
import cn.afterturn.easypoi.handler.inter.IExcelReadRowHandler;
/**
* Excel 导入工具
@@ -124,20 +123,6 @@ public class ExcelImportUtil {
}
}
/**
* Excel 通过SAX解析方法,适合大数据导入,不支持图片
* 导入 数据源IO流,不返回校验结果 导入 字段类型 Integer,Long,Double,Date,String,Boolean
*
* @param inputstream
* @param pojoClass
* @param params
* @return
*/
public static <T> List<T> importExcelBySax(InputStream inputstream, Class<?> pojoClass,
ImportParams params) {
return new SaxReadExcel().readExcel(inputstream, pojoClass, params, null, null);
}
/**
* Excel 通过SAX解析方法,适合大数据导入,不支持图片
* 导入 数据源本地文件,不返回校验结果 导入 字 段类型 Integer,Long,Double,Date,String,Boolean
@@ -149,20 +134,8 @@ public class ExcelImportUtil {
*/
@SuppressWarnings("rawtypes")
public static void importExcelBySax(InputStream inputstream, Class<?> pojoClass,
ImportParams params, IExcelReadRowHandler hanlder) {
new SaxReadExcel().readExcel(inputstream, pojoClass, params, null, hanlder);
}
/**
* Excel 通过SAX解析方法,适合大数据导入,不支持图片
* 导入 数据源IO流,不返回校验结果 导入 字段类型 Integer,Long,Double,Date,String,Boolean
*
* @param inputstream
* @param rowRead
* @return
*/
public static <T> List<T> importExcelBySax(InputStream inputstream, ISaxRowRead rowRead) {
return new SaxReadExcel().readExcel(inputstream, null, null, rowRead, null);
ImportParams params, IReadHandler hanlder) {
new SaxReadExcel().readExcel(inputstream, pojoClass, params, hanlder);
}
}

+ 4
- 4
easypoi-base/src/main/java/cn/afterturn/easypoi/excel/imports/sax/SaxReadExcel.java Parādīt failu

@@ -19,6 +19,7 @@ import java.io.InputStream;
import java.util.Iterator;
import java.util.List;
import cn.afterturn.easypoi.handler.inter.IReadHandler;
import org.apache.poi.openxml4j.opc.OPCPackage;
import org.apache.poi.xssf.eventusermodel.XSSFReader;
import org.apache.poi.xssf.model.SharedStringsTable;
@@ -34,7 +35,6 @@ import cn.afterturn.easypoi.excel.entity.ImportParams;
import cn.afterturn.easypoi.excel.imports.sax.parse.ISaxRowRead;
import cn.afterturn.easypoi.excel.imports.sax.parse.SaxRowRead;
import cn.afterturn.easypoi.exception.excel.ExcelImportException;
import cn.afterturn.easypoi.handler.inter.IExcelReadRowHandler;
/**
* 基于SAX Excel大数据读取,读取Excel 07版本,不支持图片读取
@@ -48,10 +48,10 @@ public class SaxReadExcel {
private static final Logger LOGGER = LoggerFactory.getLogger(SaxReadExcel.class);
public <T> List<T> readExcel(InputStream inputstream, Class<?> pojoClass, ImportParams params,
ISaxRowRead rowRead, IExcelReadRowHandler hanlder) {
IReadHandler hanlder) {
try {
OPCPackage opcPackage = OPCPackage.open(inputstream);
return readExcel(opcPackage, pojoClass, params, rowRead, hanlder);
return readExcel(opcPackage, pojoClass, params, null, hanlder);
} catch (Exception e) {
LOGGER.error(e.getMessage(), e);
throw new ExcelImportException(e.getMessage());
@@ -59,7 +59,7 @@ public class SaxReadExcel {
}
private <T> List<T> readExcel(OPCPackage opcPackage, Class<?> pojoClass, ImportParams params,
ISaxRowRead rowRead, IExcelReadRowHandler hanlder) {
ISaxRowRead rowRead, IReadHandler hanlder) {
try {
XSSFReader xssfReader = new XSSFReader(opcPackage);
SharedStringsTable sst = xssfReader.getSharedStringsTable();


+ 3
- 3
easypoi-base/src/main/java/cn/afterturn/easypoi/excel/imports/sax/parse/SaxRowRead.java Parādīt failu

@@ -22,6 +22,7 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import cn.afterturn.easypoi.handler.inter.IReadHandler;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -36,7 +37,6 @@ import cn.afterturn.easypoi.excel.entity.sax.SaxReadCellEntity;
import cn.afterturn.easypoi.excel.imports.CellValueService;
import cn.afterturn.easypoi.excel.imports.base.ImportBaseService;
import cn.afterturn.easypoi.exception.excel.ExcelImportException;
import cn.afterturn.easypoi.handler.inter.IExcelReadRowHandler;
import cn.afterturn.easypoi.util.PoiPublicUtil;
import cn.afterturn.easypoi.util.PoiReflectorUtil;
@@ -69,9 +69,9 @@ public class SaxRowRead extends ImportBaseService implements ISaxRowRead {
private CellValueService cellValueServer;
private IExcelReadRowHandler hanlder;
private IReadHandler hanlder;
public SaxRowRead(Class<?> pojoClass, ImportParams params, IExcelReadRowHandler hanlder) {
public SaxRowRead(Class<?> pojoClass, ImportParams params, IReadHandler hanlder) {
list = Lists.newArrayList();
this.params = params;
this.pojoClass = pojoClass;


easypoi-base/src/main/java/cn/afterturn/easypoi/handler/inter/IExcelReadRowHandler.java → easypoi-base/src/main/java/cn/afterturn/easypoi/handler/inter/IReadHandler.java Parādīt failu

@@ -21,11 +21,17 @@ package cn.afterturn.easypoi.handler.inter;
* 2015年1月16日 下午8:06:26
* @param <T>
*/
public interface IExcelReadRowHandler<T> {
public interface IReadHandler<T> {
/**
* 处理解析对象
* @param t
*/
public void handler(T t);


/**
* 处理完成之后的业务
*/
public void doAfterAll();

}

+ 1
- 1
easypoi-web/pom.xml Parādīt failu

@@ -4,7 +4,7 @@
<parent>
<groupId>cn.afterturn</groupId>
<artifactId>easypoi</artifactId>
<version>4.0.0-SNAPSHOT</version>
<version>4.0.0</version>
</parent>
<artifactId>easypoi-web</artifactId>
<dependencies>


+ 2
- 2
pom.xml Parādīt failu

@@ -3,7 +3,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>cn.afterturn</groupId>
<artifactId>easypoi</artifactId>
<version>4.0.0-SNAPSHOT</version>
<version>4.0.0</version>
<packaging>pom</packaging>
<name>easypoi</name>
<modules>
@@ -45,7 +45,7 @@
</organization>
<properties>
<sub.version>4.0.0-SNAPSHOT</sub.version>
<sub.version>4.0.0</sub.version>
<poi.version>4.0.0</poi.version>
<xerces.version>2.9.1</xerces.version>
<guava.version>16.0.1</guava.version>


Notiek ielāde…
Atcelt
Saglabāt