JavaBeans和JasperReports

时间:2010-03-01 16:59:06

标签: jasper-reports

我正在将JasperReports与JavaBeans一起使用(我需要在使用Hibernate的应用程序中打印报告)。现在我可以编写Beans集合并在JasperReports中使用它们,但有时我想知道是否有办法访问bean属性而不是它是一个集合。我的意思是我使用JRBeanCollectionSource作为各种subReports的源。假设我有一个People列表,每个人都有一个Car属性。现在有没有办法直接访问汽车属性而不将其视为集合?

1 个答案:

答案 0 :(得分:3)

您可以尝试将该属性从Bean中拉出并放入不同的DataSource,例如JRMapCollectionDataSource。

这意味着每次都不必处理整个Bean集合。

以下是构建DataSource的示例代码。

Collection<Map<String, Object>> myColl = new ArrayList<Map<String,Object>>();

Map<String, Object> map1 = new HashMap<String, Object>();
map1.put("Field1","Value1");
map1.put("Field2","Value2");
map1.put("Field3", someObject);
myColl.add(map1);

JRMapCollectionDataSource source = new JRMapCollectionDataSource(myColl);