ホームページ  >  記事  >  Java  >  Jasper レポートの詳細バンドに JavaBean のリスト データを表示するにはどうすればよいですか?

Jasper レポートの詳細バンドに JavaBean のリスト データを表示するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-11-23 12:30:14124ブラウズ

How to Display a JavaBean's List Data in a Jasper Report's Detail Band?

JRBeanCollectionDataSource: JavaBeans の java.util.List からのデータの表示

概要

JavaBeans にはデータのコレクションが含まれることがよくあります。 JRBeanCollectionDataSource を使用すると、これらのコレクションのデータをさまざまな方法で表示できます。

質問

JavaBean の Detail バンドに格納されている java.util.List のデータを表示するにはどうすればよいですか?ジャスパーレポート?

回答

に関する重要な考慮事項解決策:

  • _THIS 式を使用して JavaBean オブジェクトにアクセスします。
  • 詳細バンド内のリスト (jr:list) コンポーネントを利用します。

実装

Javaクラス:

// 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>

結果

このアプローチは、 JavaBean、および詳細バンドのサブレポート コンポーネント内の List 要素のコンテンツ。

以上がJasper レポートの詳細バンドに JavaBean のリスト データを表示するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。