Rumah > Java > javaTutorial > teks badan

Bagaimana untuk Memaparkan Data Senarai JavaBean dalam Jalur Butiran Laporan Jasper?

Barbara Streisand
Lepaskan: 2024-11-23 12:30:14
asal
141 orang telah melayarinya

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

JRBeanCollectionDataSource: Memaparkan Data daripada java.util.List dalam JavaBeans

Pengenalan

JavaBeans selalunya mengandungi koleksi data. JRBeanCollectionDataSource membolehkan anda memaparkan data daripada koleksi ini dalam pelbagai cara.

Soalan

Bagaimana saya boleh memaparkan data daripada java.util.List yang disimpan dalam JavaBean dalam jalur Detail sebuah Laporan Jasper?

Jawapan

Kunci Pertimbangan untuk Penyelesaian:

  • Gunakan ungkapan _THIS untuk mengakses objek JavaBean.
  • Gunakan komponen Senarai (jr:list) dalam jalur Detail.

Pelaksanaan

Jawa Kelas:

// JavaBean with a list of strings
public class BeanWithList {
  private List<String> cities;
  private Integer id;

  // Getter methods
}
Salin selepas log masuk

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>
Salin selepas log masuk

Hasil

Pendekatan ini akan menghasilkan laporan yang memaparkan medan id bagi JavaBean, serta kandungan elemen Senarai dalam komponen sublaporan dalam jalur Detail.

Atas ialah kandungan terperinci Bagaimana untuk Memaparkan Data Senarai JavaBean dalam Jalur Butiran Laporan Jasper?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan