2

我正在尝试使用 jXLS 将数据从列表导出到 Excel 工作表。我需要使用 jXLS 创建一个 Excel 模板并使用该模板打印出一个数据列表。我有一个名为 Department 的 Bean 类,我需要使用 forEach 语句循环遍历列表并将数据写入 Excel 工作表。

有人可以告诉我如何以及在哪里可以编写我的 Excel 模板吗?我知道我里面的代码应该是这样的 -

            <jx:forEach items="${departments}" var="department">
                ${department.name} | ${department.chief}
            </jx:forEach>
4

3 回答 3

1

您需要创建一个 Excel 模板文件,在其中定义您需要为集合中的对象数量重复的基本结构。

编码

<jx:forEach items="${departments}" var="department">
                ${department.name} | ${department.chief}
            </jx:forEach>

将进入该模板excel。

然后您需要在 java 代码中使用 JXLS API 来从此模板生成 excel。

Map contextBeans = new HashMap();
contextBeans.put("departments", departmentList);
xlsTransformer.transformXLS(xlsTemplateFileURL.getPath(), contextBeans, reportFileURL.getPath());

此代码将使用在 contextBeans Map 中加载的集合填充的模板文件创建 excel 文件。

于 2012-07-05T07:16:20.017 回答
0

在语法上,jXLS 与 JSTL 非常相似。在您的情况下,您只需要一个 Excel 模板,其中的列将填充 jXLS 符号,例如

   cola              col b
1  {department.name}  {department.chief}

在 Java 中,您需要一个 HashMap,它将包含您所有部门 bean 的 ArrayList。

于 2012-07-15T13:17:33.977 回答
0

您可以将它们粘贴到 Excel 模板的工作表中,任何行都可以。也许您应该先在http://jxls.sourceforge.net/中查看示例。

于 2013-08-16T02:20:03.917 回答