使用easypoi将列和行合并

项目中有用到easypoi来进行excel导出。

有时候我们会遇到导出的内容会出现一对多的关系。

比如1教师-n学生。

想要导出这种关系有两种方式:

一、

使用其ExcelModel。已学生信息为主,每个学生的ExcelModel中都有教师的信息。这样一个List就可以了。

但是这样导出来的数据不是特别好看。

在Excel中就会是如下效果:



但是我们希望能够进行单元格的合并。将左边相同的信息合并起来,这样就需要第二种方式。

二、

可以使用easypoi中的@ExcelCollection 注解和注解中的needMerge = true属性来设置。

首先我们创建一个教师的ExcelModel实体。

其中教师id字段和教师名称字段在其@Excel注解中增加needMerge = true属性,表示该字段可以被合并。

然后我们再创建一个学生的ExcelModel实体。

其中有对应的学生信息要求的字段。

最后一步,我们需要在教师的ExcelModel中再创建一个属性,该属性是学生对象的List集合。并对该属性使用@ExcelCollection注解,不需要加needMerge = true。

这样就可以变成如下:


是不是好看了许多。


好了,问题已解决。

评论

© zqq_life | Powered by LOFTER