Maison > Java > javaDidacticiel > le corps du texte

Comment afficher les données d'une liste Java dans un JavaBean à l'aide de JRBeanCollectionDataSource ?

DDD
Libérer: 2024-11-26 15:50:10
original
912 Les gens l'ont consulté

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

JRBeanCollectionDataSource : affichage des données d'une liste Java dans un JavaBean

Présentation

Les rapports basés sur JavaBean impliquent souvent l'affichage de données contenues dans des listes Java. Cet article explique comment y parvenir à l'aide de JRBeanCollectionDataSource.

Implémentation

Étape 1 : Créer un JavaBean avec un champ de liste

public class Userinfo {
    private String username;
    private String password;
    private List<Address> listAddress;
}
Copier après la connexion

Étape 2 : Générer un ensemble de données pour la liste

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);
}
Copier après la connexion

Étape 3 : Définir le JRXML Rapport

Dans le rapport, créez un sous-ensemble de données pour la liste et un composantElement (jr:list) dans la bande Détail.

<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>
Copier après la connexion

Points clés

L'expression
  • _THIS est utilisée dans le sous-ensemble de données pour récupérer l'élément actuel du list.
  • Le composant jr:list au sein de la bande Detail affiche les éléments de la liste.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal