JavaBean 通常包含数据集合。 JRBeanCollectionDataSource 允许您以多种方式显示这些集合中的数据。
如何在详细信息带中显示存储在 JavaBean 中的 java.util.List 中的数据Jasper 报告?
主要考虑因素解决方案:
Java Class:
// JavaBean with a list of strings public class BeanWithList { private List<String> cities; private Integer id; // Getter methods }
JRXML:
<jasperReport> <subDataset name="dataset1"> <field name="city" class="java.lang.String"> <fieldDescription><![CDATA[_THIS]]></fieldDescription> </field> </subDataset> <field name="id" class="java.lang.Integer"/> <field name="cities" class="java.util.Collection"/> <title> <staticText>Bean with List sample</staticText> </title> <detail> <textField> <reportElement x="0" y="0" width="100" height="20"/> <textFieldExpression><![CDATA[$F{id}]]></textFieldExpression> </textField> <componentElement> <reportElement x="100" y="0" width="400" height="20"/> <jr:list> <datasetRun subDataset="dataset1"> <dataSourceExpression><![CDATA[new net.sf.jasperreports.engine.data.JRBeanCollectionDataSource($F{cities})]]></dataSourceExpression> </datasetRun> <jr:listContents height="20" width="400"> <textField> <reportElement x="0" y="0" width="100" height="20"/> <textFieldExpression><![CDATA[$F{city}]]></textFieldExpression> </textField> </jr:listContents> </jr:list> </componentElement> </detail> </jasperReport>
此方法将生成一个报告,显示 id 字段JavaBean,以及详细信息区域中子报表组件中的 List 元素的内容。
以上是如何在 Jasper 报表的详细信息区域中显示 JavaBean 的列表数据?的详细内容。更多信息请关注PHP中文网其他相关文章!