@ -1,5 +1,5 @@
language: java
jdk: oraclejdk8
jdk: openjdk8
cache:
directories:
- $HOME/.m2
@ -7,7 +7,7 @@ import com.alibaba.excel.read.metadata.ReadSheet;
/**
* Excel file Executor
*
* @author zhuangjiaju
* @author Jiaju Zhuang
*/
public interface ExcelExecutor {
@ -7,7 +7,7 @@ import com.alibaba.excel.cache.ReadCache;
* Sax read sharedStringsTable.xml
public class SharedStringsTableHandler extends DefaultHandler {
private static final String T_TAG = "t";
@ -9,7 +9,7 @@ import java.lang.annotation.Target;
* Ignore convert excel
@Target(ElementType.FIELD)
@Retention(RetentionPolicy.RUNTIME)
@ -12,7 +12,7 @@ import java.lang.annotation.Target;
* <li>write: It can be used on classes {@link java.util.Date}
* <li>read: It can be used on classes {@link String}
@ -13,7 +13,7 @@ import java.math.RoundingMode;
* <li>write: It can be used on classes that inherit {@link Number}
* Set the width of the table
@Target({ElementType.FIELD, ElementType.TYPE})
* Set the height of each table
@Target({ElementType.TYPE})
@ -25,7 +25,7 @@ import com.alibaba.excel.util.StringUtils;
* Default cache
public class Ehcache implements ReadCache {
@ -9,7 +9,7 @@ import com.alibaba.excel.context.AnalysisContext;
* Putting temporary data directly into a map is a little more efficient but very memory intensive
public class MapCache implements ReadCache {
private Map<Integer, String> cache = new HashMap<Integer, String>();
@ -5,7 +5,7 @@ import com.alibaba.excel.context.AnalysisContext;
* Read cache
public interface ReadCache {
@ -8,7 +8,7 @@ import com.alibaba.excel.metadata.property.ExcelContentProperty;
* An empty converter.It's automatically converted by type.
public class AutoConverter implements Converter {
@ -5,7 +5,7 @@ import com.alibaba.excel.enums.CellDataTypeEnum;
* Converter unique key
public class ConverterKeyBuild {
public static String buildKey(Class clazz) {
@ -37,7 +37,7 @@ import com.alibaba.excel.converters.string.StringStringConverter;
* Load default handler
public class DefaultConverterLoader {
@ -11,7 +11,7 @@ import com.alibaba.excel.metadata.property.ExcelContentProperty;
* BigDecimal and boolean converter
public class BigDecimalBooleanConverter implements Converter<BigDecimal> {
* BigDecimal and number converter
public class BigDecimalNumberConverter implements Converter<BigDecimal> {
@ -13,7 +13,7 @@ import com.alibaba.excel.util.NumberUtils;
* BigDecimal and string converter
public class BigDecimalStringConverter implements Converter<BigDecimal> {
@ -9,7 +9,7 @@ import com.alibaba.excel.metadata.property.ExcelContentProperty;
* Boolean and boolean converter
public class BooleanBooleanConverter implements Converter<Boolean> {
* Boolean and number converter
public class BooleanNumberConverter implements Converter<Boolean> {
* Boolean and string converter
public class BooleanStringConverter implements Converter<Boolean> {
* Byte and boolean converter
public class ByteBooleanConverter implements Converter<Byte> {
private static final Byte ONE = (byte)1;
* Byte and number converter
public class ByteNumberConverter implements Converter<Byte> {
@ -12,7 +12,7 @@ import com.alibaba.excel.util.NumberUtils;
* Byte and string converter
public class ByteStringConverter implements Converter<Byte> {
@ -13,7 +13,7 @@ import com.alibaba.excel.metadata.property.ExcelContentProperty;
* Date and number converter
public class DateNumberConverter implements Converter<Date> {
@ -13,7 +13,7 @@ import com.alibaba.excel.util.DateUtils;
* Date and string converter
public class DateStringConverter implements Converter<Date> {
@Override
* Double and boolean converter
public class DoubleBooleanConverter implements Converter<Double> {
private static final Double ONE = 1.0;
* Double and number converter
public class DoubleNumberConverter implements Converter<Double> {
* Double and string converter
public class DoubleStringConverter implements Converter<Double> {
* Float and boolean converter
public class FloatBooleanConverter implements Converter<Float> {
private static final Float ONE = (float)1.0;
* Float and number converter
public class FloatNumberConverter implements Converter<Float> {
* Float and string converter
public class FloatStringConverter implements Converter<Float> {
* Integer and boolean converter
public class IntegerBooleanConverter implements Converter<Integer> {
private static final Integer ONE = 1;
* Integer and number converter
public class IntegerNumberConverter implements Converter<Integer> {
* Integer and string converter
public class IntegerStringConverter implements Converter<Integer> {
* Long and boolean converter
public class LongBooleanConverter implements Converter<Long> {
private static final Long ONE = 1L;
* Long and number converter
public class LongNumberConverter implements Converter<Long> {
* Long and string converter
public class LongStringConverter implements Converter<Long> {
* Short and boolean converter
public class ShortBooleanConverter implements Converter<Short> {
private static final Short ONE = 1;
* Short and number converter
public class ShortNumberConverter implements Converter<Short> {
* Short and string converter
public class ShortStringConverter implements Converter<Short> {
* String and boolean converter
public class StringBooleanConverter implements Converter<String> {
* String and error converter
public class StringErrorConverter implements Converter<String> {
* String and number converter
public class StringNumberConverter implements Converter<String> {
* String and string converter
public class StringStringConverter implements Converter<String> {
@ -8,7 +8,7 @@ import com.alibaba.excel.util.StringUtils;
* excel internal data type
public enum CellDataTypeEnum {
@ -3,7 +3,7 @@ package com.alibaba.excel.enums;
* The types of header
**/
public enum HeadKindEnum {
* The types of holder
public enum HolderEnum {
* The types of write last row
public enum WriteLastRowType {
@ -3,6 +3,6 @@ package com.alibaba.excel.event;
* Intercepts handle some business logic
public interface Handler {}
* Interface to listen for processing results
public interface Listener {}
@ -4,7 +4,7 @@ package com.alibaba.excel.event;
* There are multiple interceptors that execute only one of them when fired once.If you want to control which one to
* execute please use {@link Order}
public interface NotRepeatExecutor {
@ -3,7 +3,7 @@ package com.alibaba.excel.event;
* Implement this interface when sorting
public interface Order {
@ -8,7 +8,7 @@ import com.alibaba.excel.context.AnalysisContext;
* Synchronous data reading
public class SyncReadListener extends AnalysisEventListener<Object> {
private List<Object> list = new ArrayList<Object>();
@ -3,7 +3,7 @@ package com.alibaba.excel.exception;
* Throw the exception when you need to stop
public class ExcelAnalysisStopException extends ExcelAnalysisException {
@ -2,7 +2,7 @@ package com.alibaba.excel.exception;
public class ExcelCommonException extends RuntimeException {
* Data convert exception
public class ExcelDataConvertException extends RuntimeException {
@ -8,7 +8,7 @@ import com.alibaba.excel.converters.Converter;
* Write/read holder
public abstract class AbstractHolder implements ConfigurationHolder {
* Basic parameter
public class BasicParameter {
* excel internal cell data
public class CellData {
private CellDataTypeEnum type;
* Get the corresponding holder
public interface ConfigurationHolder extends Holder {
@ -3,7 +3,7 @@ package com.alibaba.excel.metadata;
* Global configuration
public class GlobalConfiguration {
@ -8,7 +8,7 @@ import com.alibaba.excel.metadata.property.ColumnWidthProperty;
* excel head
public class Head {
@ -6,7 +6,7 @@ import com.alibaba.excel.enums.HolderEnum;
public interface Holder {
@ -5,7 +5,7 @@ import com.alibaba.excel.annotation.write.style.ColumnWidth;
* Configuration from annotations
public class ColumnWidthProperty {
private Integer width;
@ -5,7 +5,7 @@ import com.alibaba.excel.annotation.format.DateTimeFormat;
public class DateTimeFormatProperty {
private String format;
@ -7,7 +7,7 @@ import com.alibaba.excel.annotation.format.NumberFormat;
public class NumberFormatProperty {
@ -6,7 +6,7 @@ import com.alibaba.excel.annotation.write.style.HeadRowHeight;
public class RowHeightProperty {
private Short height;
@ -17,7 +17,7 @@ import com.alibaba.excel.support.ExcelTypeEnum;
* Build ExcelWriter
public class ExcelReaderBuilder {
@ -14,7 +14,7 @@ import com.alibaba.excel.read.metadata.ReadSheet;
* Build sheet
public class ExcelReaderSheetBuilder {
private ExcelReader excelReader;
@ -6,7 +6,7 @@ import com.alibaba.excel.event.Listener;
* Interface to listen for read results
public interface ReadListener<T> extends Listener {
@ -9,7 +9,7 @@ import com.alibaba.excel.read.listener.ReadListener;
* Read basic parameter
public class ReadBasicParameter extends BasicParameter {
@ -11,7 +11,7 @@ import com.alibaba.excel.support.ExcelTypeEnum;
* Workbook
public class ReadWorkbook extends ReadBasicParameter {
@ -31,7 +31,7 @@ import com.alibaba.excel.util.StringUtils;
* Read Holder
public abstract class AbstractReadHolder extends AbstractHolder implements ReadHolder, ReadListenerRegistryCenter {
@ -10,7 +10,7 @@ import com.alibaba.excel.read.metadata.property.ExcelReadHeadProperty;
* Get the corresponding Holder
public interface ReadHolder extends ConfigurationHolder {
@ -7,7 +7,7 @@ import com.alibaba.excel.metadata.Holder;
* sheet holder
public class ReadRowHolder implements Holder {
@ -6,7 +6,7 @@ import com.alibaba.excel.read.metadata.ReadSheet;
public class ReadSheetHolder extends AbstractReadHolder {
@ -20,7 +20,7 @@ import com.alibaba.excel.support.ExcelTypeEnum;
* Workbook holder
public class ReadWorkbookHolder extends AbstractReadHolder {
private static final Logger LOGGER = LoggerFactory.getLogger(ReadWorkbookHolder.class);
@ -3,7 +3,7 @@ package com.alibaba.excel.util;
* boolean util
public class BooleanUtils {
@ -9,7 +9,7 @@ import com.alibaba.excel.exception.ExcelDataConvertException;
* Date utils
public class DateUtils {
public static final String DATE_FORMAT_14 = "yyyyMMddHHmmss";
* Number utils
public class NumberUtils {
private NumberUtils() {}
@ -15,7 +15,7 @@ import com.alibaba.excel.write.metadata.WriteWorkbook;
* Build ExcelBuilder
public class ExcelWriterBuilder {
@ -12,7 +12,7 @@ import com.alibaba.excel.write.metadata.WriteSheet;
public class ExcelWriterSheetBuilder {
private ExcelWriter excelWriter;
@ -13,7 +13,7 @@ import com.alibaba.excel.write.metadata.WriteTable;
public class ExcelWriterTableBuilder {
@ -10,7 +10,7 @@ import com.alibaba.excel.write.metadata.holder.WriteTableHolder;
* intercepts handle cell creation
public interface CellWriteHandler extends WriteHandler {
@ -12,7 +12,7 @@ import com.alibaba.excel.write.style.HorizontalCellStyleStrategy;
public class DefaultWriteHandlerLoader {
@ -8,7 +8,7 @@ import com.alibaba.excel.write.metadata.holder.WriteTableHolder;
* intercepts handle row creation
public interface RowWriteHandler extends WriteHandler {
@ -6,7 +6,7 @@ import com.alibaba.excel.write.metadata.holder.WriteWorkbookHolder;
* intercepts handle sheet creation
public interface SheetWriteHandler extends WriteHandler {
@ -5,7 +5,7 @@ import com.alibaba.excel.write.metadata.holder.WriteWorkbookHolder;
* intercepts handle Workbook creation
public interface WorkbookWriteHandler extends WriteHandler {
@ -5,6 +5,6 @@ import com.alibaba.excel.event.Handler;
* intercepts handle excel write
public interface WriteHandler extends Handler {}
@ -12,7 +12,7 @@ import com.alibaba.excel.write.metadata.holder.WriteTableHolder;
* Merge strategy
public abstract class AbstractMergeStrategy implements CellWriteHandler {
@ -9,7 +9,7 @@ import com.alibaba.excel.metadata.Head;
* The regions of the loop merge
public class LoopMergeStrategy extends AbstractMergeStrategy {
private int eachRow;
* It only merges once when create cell(firstRowIndex,lastRowIndex)
public class OnceAbsoluteMergeStrategy extends AbstractMergeStrategy {
@ -9,7 +9,7 @@ import com.alibaba.excel.write.handler.WriteHandler;
* Write basic parameter
public class WriteBasicParameter extends BasicParameter {
@ -10,7 +10,7 @@ import com.alibaba.excel.write.handler.WriteHandler;
public class WriteWorkbook extends WriteBasicParameter {
@ -42,7 +42,7 @@ import com.alibaba.excel.write.style.row.SimpleRowHeightStyleStrategy;
* Write holder configuration
public abstract class AbstractWriteHolder extends AbstractHolder implements WriteHolder {
@ -11,7 +11,7 @@ import com.alibaba.excel.write.property.ExcelWriteHeadProperty;
public interface WriteHolder extends ConfigurationHolder {
public class WriteSheetHolder extends AbstractWriteHolder {
@ -6,7 +6,7 @@ import com.alibaba.excel.write.metadata.WriteTable;
public class WriteTableHolder extends AbstractWriteHolder {
/***
@ -21,7 +21,7 @@ import com.alibaba.excel.write.metadata.WriteWorkbook;
public class WriteWorkbookHolder extends AbstractWriteHolder {
private static final Logger LOGGER = LoggerFactory.getLogger(WriteWorkbookHolder.class);