java

JasperReports

Présentation de la librairie JasperReports

Le projet JasperReports est un projet très actif (mises à jour tous les 2 mois environ), aujourd'hui, la version 5.0 de la librairie est disponible. JasperReports utilise de nombreuses bibliothèques du projet Commons d'Apache comme Collections, BeanUtils, Digester ou encore Logging par exemple. D'autres librairies sont utilisées comme iText pour la génération de PDF.

Dans un premier temps, rappelons les étapes nécessaires à la génération de rapports avec JasperReports :

etapes
Etapes pour la création et la génération de rapports

La première étape consiste à avoir un modèle XML (souvent avec extension jrxml) écrit manuellement ou généré à l'aide d'iReport Designer par exemple. Ce fichier va être "compilé" afin d'obtenir un rapport, dont le contenu ne sera plus lisible par l'utilisateur mais compréhensible par JasperReports. L'étape qui suit consiste à "remplir" le rapport avec les données provenant de la source de données afin d'obtenir un rapport rempli qui pourra être imprimé ou exporté sous différents formats.


A chacune des étapes présentées ci-dessus correspond une classe de la librairie :

Ensuite, pour passer d'une étape à la suivante, JasperReports propose des classes facades :


On peut donc faire l'analogie entre les étapes de la génération de rapports et les classes Java avec le schéma suivant :

etapes
Utilisation des classes Java dans la génération de rapports


Il faut savoir qu'il n'est pas indispensable de réaliser toutes les étapes dans le code Java utilisant la librairie JasperReports. En effet, iReport Designer par exemple, permet d'obtenir directement un rapport compilé (.jasper). Ainsi, il est possible dans votre application Java de ne pas utiliser les classes JRXmlLoader, JasperDesign, JasperCompileManager mais d'utiliser directement un objet JasperPrint obtenu par le remplissage avec la classe JasperFillManager d'un modèle compilé

Suite >>>