在做web项目时,再有些模块中需要用到导出报表功能,而这时我们有一种简单实用的方法,仿照网上–Java基于注解和反射导入导出Excel(Bean转Excel,Excel转Bean)的用例来添加该功能时,经常会出现一些bug;本文就出现java.lang.IllegalArgumentException: Minimum column number is 0
该异常做一解决说明(不到之处请谅解,或在留言处留贴探讨).
具体引用可以仿照网上实例,这边就不做详细介绍了;
//创建ExportExcel工具类
//创建实体类
/*需要注意的是这边的实体类加@ExcelField注解.(加的位置可以直接加在变量上,也可以加在需要展示在Excel中的变量的get方法上,推荐第一种)
大多在写完逻辑后发现报错最大可能是没有加@ExcelField,
或者就是加了但是没有加对,尤其是多个小模块时,需要group属性去区分开
总之在出现问题时,不用急,先走一遍整个逻辑,没有问题的话就是某些细节小问题了,这时候就先去检查实体类的注解有没有配对,然后是工具类有没有引对或者写对.
附上@ExcelField注解的定义说明;
String value() default “”;
/**
* 导出字段标题
*/
String title();
/**
* 字段类型(0:导出导入;1:仅导出;2:仅导入)
*/
int type() default 0;
/**
* 导出字段对齐方式(0:自动;1:靠左;2:居中;3:靠右)
*/
int align() default 0;
/**
* 导出字段字段排序(升序)
*/
int sort() default 0;
/**
* 如果是字典类型,请设置字典的type值
*/
String dictType() default "";
/**
* 反射类型
*/
Class<?> fieldType() default Class.class;
}