>Java >java지도 시간 >JRBeanCollectionDataSource를 사용하여 JavaBean의 Java 목록에서 데이터를 표시하는 방법은 무엇입니까?

JRBeanCollectionDataSource를 사용하여 JavaBean의 Java 목록에서 데이터를 표시하는 방법은 무엇입니까?

DDD
DDD원래의
2024-11-26 15:50:10923검색

How to Display Data from a Java List in a JavaBean Using JRBeanCollectionDataSource?

JRBeanCollectionDataSource: JavaBean에서 Java 목록의 데이터 표시

개요

JavaBean 기반 보고서에는 Java 목록에 포함된 데이터 표시가 포함되는 경우가 많습니다. 이 기사에서는 JRBeanCollectionDataSource를 사용하여 이를 달성하는 방법을 살펴봅니다.

구현

1단계: 목록 필드를 사용하여 JavaBean 생성

public class Userinfo {
    private String username;
    private String password;
    private List<Address> listAddress;
}

2단계: 목록에 대한 데이터 세트 생성

private static JRDataSource getDataSource() {
    Collection<BeanWithList> coll = new ArrayList<BeanWithList>();
    coll.add(new BeanWithList(Arrays.asList("London", "Paris"), 1));
    coll.add(new BeanWithList(Arrays.asList("London", "Madrid", "Moscow"), 2));
    coll.add(new BeanWithList(Arrays.asList("Rome"), 3));

    return new JRBeanCollectionDataSource(coll);
}

3단계: JRXML 정의 보고서

보고서의 세부정보 밴드에 목록 및 구성 요소 요소(jr:list)에 대한 하위 데이터 세트를 만듭니다.

<subDataset name="dataset1">
    <field name="city" class="java.lang.String">
        <fieldDescription><![CDATA[_THIS]]></fieldDescription>
    </field>
</subDataset>

...

<detail>
    <componentElement>
        <jr:list printOrder="Vertical">
            <datasetRun subDataset="dataset1">
                <dataSourceExpression><![CDATA[new net.sf.jasperreports.engine.data.JRBeanCollectionDataSource($F{cities})]]></dataSourceExpression>
            </datasetRun>
        </jr:list>
    </componentElement>
</detail>

핵심 사항

  • _THIS 표현식은 하위 데이터 세트에서 검색하는 데 사용됩니다. 목록의 현재 요소.
  • Detail 밴드 내의 jr:list 구성 요소는 목록의 요소를 표시합니다.

위 내용은 JRBeanCollectionDataSource를 사용하여 JavaBean의 Java 목록에서 데이터를 표시하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.