这个问题是关于Jasper Reports的。
假设我想使用JRBeanCollectionDataSource
这样创建一个Jasper报告......
jasperPrint = JasperFillManager.fillReport(JRLoader.getInputStream(fileName), parameters, new JRBeanCollectionDataSource(aList));
假设我使用的PoJo具有List类型的属性。
如何访问
例如在Jasper XML文件中:
...field name="?????" class="java.lang.String" ...
感谢您的帮助......
答案 0 :(得分:6)
如果您的数据源具有List类型的字段(更一般地,类型为java.util.Collection),那么您可以使用Table或List或Subreport组件来迭代它们。使用其中一个元素并设置其数据源如下:
new net.sf.jasperreports.engine.data.JRMapCollectionDataSource($F{myListField})
您还可以使用静态方法添加自己的帮助程序类,以便适当地处理这些字段。
MongoDB出现了很多。我写了一篇关于Collections in JasperReports的文章。它使用MongoDB作为数据源......但它同样适用于您的POJO数据源。