在这之前我要说,我还是推荐一个导出Excel建立一个单独的类
- 导出容易
- 修改容易
- 不会涉及太多的操作
但是,不论怎么我们还是会涉及到多个对象一起玩耍,下面我将分场景分解问题
情景一.关联一个对象导出
比如我们导出课程,可能需要关联教师类,然后到处老师名称
![](https://i-blog.csdnimg.cn/blog_migrate/7d527eacc13858b482277fe21d2a5c70.png)
这样我们就关联了这个类,类似于MonyToOne
![](https://i-blog.csdnimg.cn/blog_migrate/7c150d15ff95098d54e81febce144e56.png)
这样在老师对象里面标示这个name就会被导出,也就完成了我们的
情景二.需要对同一个对象多次导出
比如我们班级,同时又语文老师和数学老师,这个两个老师同样都是老师,需要导出,这是我们需要给@ExcelEntity一个ID
如
![](https://i-blog.csdnimg.cn/blog_migrate/1c128ef1e096f89b206ab3c3ad1527f8.png)
这样在TeacherEntity这个对象里面,我们需要对name根据id不同导出不同的name,这样设置
![](https://i-blog.csdnimg.cn/blog_migrate/4ecf583ede1ed50f4a17d95641a1583b.png)
这样导出两个字段就会显示不同的属性
情景三.关联类里面有个不需要的属性
比如,我们导出班级的时候,老师有个手机号不需要导出,但是导出老师的时候却需要导出,这样我们需要用到@ExcelTarget
![](https://i-blog.csdnimg.cn/blog_migrate/a76f5cc75591a6f9d11660b73a6f9675.png)
![](https://i-blog.csdnimg.cn/blog_migrate/5871795455d9bdb1322d6ac01aec1ddf.png)
给我们班级一个ID为classEntity,同样给老师实体一个ID是teacherEntity
在老师的实体类
![](https://i-blog.csdnimg.cn/blog_migrate/da8568b664d34330140a2a87b9565a87.png)
第一个没有关联ID表示谁调用都会导出,第二个有ID,表示只有在ID为
teacherEntity才会导出
最后,orderNum这个属性也可以和name一样根据不同的导出设置不同的排序
-----------------------------------------------------------------------------------------------------------------------
easypoi功能如同名字easy,主打的功能就是易容,让一个没见接触过poi的人员 就可以方便的写出Excel导出,Excel模板导出,Excel导入,Word模板导出,通过简单的注解和模板 语言(熟悉的表达式语法),完成以前复杂的写法
作者博客:http://blog.csdn.net/qjueyue
作者邮箱: qrb.jueyue@gmail.com