Excel jxls集合打印订单

Excel jxls集合打印订单,excel,jxls,Excel,Jxls,这是我的excel模板。不幸的是,employee.email是ArrayList,可以有多个值 结果变成 实际上,aaa1.gmail.com和aaa2.gmail.com属于AAA,同样,bbb1.gmail.com和bbb2.gmail.com属于BBB。在这种情况下,excel输出非常容易引起误解 有可能得到以下信息吗 由于我对jxls非常陌生,因此非常感谢您的帮助。首先,您需要一个如下所示的POJO来保存数据 public class Employee { private

这是我的excel模板。不幸的是,employee.email是ArrayList,可以有多个值

结果变成

实际上,aaa1.gmail.com和aaa2.gmail.com属于AAA,同样,bbb1.gmail.com和bbb2.gmail.com属于BBB。在这种情况下,excel输出非常容易引起误解

有可能得到以下信息吗


由于我对jxls非常陌生,因此非常感谢您的帮助。

首先,您需要一个如下所示的POJO来保存数据

public class Employee {
    private int id = 0;

    private String name = null;

    private List<String> mails = new ArrayList<String>();

    // getters & setters
}
您需要使用两个
标记来迭代地图中的列表,然后可以将值设置到结果excel文件中

使用以下命令更改excel模板文件

最终的结果会是

Employee emp1 = new Employee();
emp1.setId(1);
emp1.setName("AAA");
emp1.getMails().add("aaa1@xyz.com");
emp1.getMails().add("aaa2@xyz.com");

Employee emp2 = new Employee();
emp2.setId(2);
emp2.setName("BBB");
emp2.getMails().add("bbb1@xyz.com");
emp2.getMails().add("bbb2@xyz.com");

List<Employee> employees = new ArrayList<Employee>();
employees.add(emp1);
employees.add(emp2);
Map<String, List<Employee>> beanParams = new HashMap<String, List<Employee>>();
beanParams.put("employees", employees);
XLSTransformer former = new XLSTransformer();
former.transformXLS(srcFilePath, beanParams, destFilePath);