我在JavaBeans中使用JasperReports (我需要在使用Hibernate的应用程序中打印报表)。现在我可以计算出bean集合并在JasperReports中使用它们,但有时我想知道是否有一种方法可以访问bean属性而不将其作为集合。我的意思是,我使用JRBeanCollectionSource作为各种subReports的源代码。假设我有一个人的列表,他们每个人都有一辆汽车。现在有没有一种方法可以直接访问汽车属性而不将其视为集合?
发布于 2010-03-04 23:11:43
您可以尝试将属性从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);https://stackoverflow.com/questions/2357497
复制相似问题