|
|
@@ -23,6 +23,80 @@ EasyPoi的几个入口工具类 |
|
|
|
|
|
|
|
1.ExcelExportUtil Excel导出(普通导出,模板导出)
|
|
|
|
2.ExcelImportUtil Excel导入
|
|
|
|
3.WordExportUtil Word导出(只支持docx ,doc版本poi存在图片的bug,暂不支持) |
|
|
|
|
|
|
|
3.WordExportUtil Word导出(只支持docx ,doc版本poi存在图片的bug,暂不支持)
|
|
|
|
|
|
|
|
|
|
|
|
---------------------------
|
|
|
|
EasyPoi导出实例
|
|
|
|
---------------------------
|
|
|
|
1.注解,导入导出都是基于注解的,实体上做上注解,标示导出对象,同时可以做一些操作
|
|
|
|
```Java
|
|
|
|
@ExcelTarget("courseEntity")
|
|
|
|
public class CourseEntity implements java.io.Serializable {
|
|
|
|
/** 主键 */
|
|
|
|
private String id;
|
|
|
|
/** 课程名称 */
|
|
|
|
@Excel(name = "课程名称", orderNum = "1", needMerge = true)
|
|
|
|
private String name;
|
|
|
|
/** 老师主键 */
|
|
|
|
@ExcelEntity(id = "yuwen")
|
|
|
|
@ExcelVerify()
|
|
|
|
private TeacherEntity teacher;
|
|
|
|
/** 老师主键 */
|
|
|
|
@ExcelEntity(id = "shuxue")
|
|
|
|
private TeacherEntity shuxueteacher;
|
|
|
|
|
|
|
|
@ExcelCollection(name = "选课学生", orderNum = "4")
|
|
|
|
private List<StudentEntity> students;
|
|
|
|
```
|
|
|
|
2.基础导出
|
|
|
|
传入导出参数,导出对象,以及对象列表即可完成导出
|
|
|
|
HSSFWorkbook workbook = ExcelExportUtil.exportExcel(new ExportParams(
|
|
|
|
"2412312", "测试", "测试"), CourseEntity.class, list);
|
|
|
|
3.基础导出,带有索引
|
|
|
|
在到处参数设置一个值,就可以在导出列增加索引
|
|
|
|
ExportParams params = new ExportParams("2412312", "测试", "测试");
|
|
|
|
params.setAddIndex(true);
|
|
|
|
HSSFWorkbook workbook = ExcelExportUtil.exportExcel(params,
|
|
|
|
TeacherEntity.class, telist);
|
|
|
|
4.导出Map
|
|
|
|
创建类似注解的集合,即可完成Map的导出,略有麻烦
|
|
|
|
List<ExcelExportEntity> entity = new ArrayList<ExcelExportEntity>();
|
|
|
|
entity.add(new ExcelExportEntity("姓名", "name"));
|
|
|
|
entity.add(new ExcelExportEntity("性别", "sex"));
|
|
|
|
|
|
|
|
List<Map<String, String>> list = new ArrayList<Map<String, String>>();
|
|
|
|
Map<String, String> map;
|
|
|
|
for (int i = 0; i < 10; i++) {
|
|
|
|
map = new HashMap<String, String>();
|
|
|
|
map.put("name", "1" + i);
|
|
|
|
map.put("sex", "2" + i);
|
|
|
|
list.add(map);
|
|
|
|
}
|
|
|
|
|
|
|
|
HSSFWorkbook workbook = ExcelExportUtil.exportExcel(new ExportParams(
|
|
|
|
"测试", "测试"), entity, list); |
|
|
|
5.模板导出
|
|
|
|
根据模板配置,完成对应导出
|
|
|
|
TemplateExportParams params = new TemplateExportParams();
|
|
|
|
params.setHeadingRows(2);
|
|
|
|
params.setHeadingStartRow(2);
|
|
|
|
Map<String,Object> map = new HashMap<String, Object>();
|
|
|
|
map.put("year", "2013");
|
|
|
|
map.put("sunCourses", list.size());
|
|
|
|
Map<String,Object> obj = new HashMap<String, Object>();
|
|
|
|
map.put("obj", obj);
|
|
|
|
obj.put("name", list.size());
|
|
|
|
params.setTemplateUrl("org/jeecgframework/poi/excel/doc/exportTemp.xls");
|
|
|
|
Workbook book = ExcelExportUtil.exportExcel(params, CourseEntity.class, list,
|
|
|
|
map);
|
|
|
|
6.导入
|
|
|
|
设置导入参数,传入文件或者流,即可获得相应的list
|
|
|
|
ImportParams params = new ImportParams();
|
|
|
|
params.setTitleRows(2);
|
|
|
|
params.setHeadRows(2);
|
|
|
|
//params.setSheetNum(9);
|
|
|
|
params.setNeedSave(true);
|
|
|
|
long start = new Date().getTime();
|
|
|
|
List<CourseEntity> list = ExcelImportUtil.importExcel(new File(
|
|
|
|
"d:/tt.xls"), CourseEntity.class, params); |