JasperReports Tutorial: Wat is Jasper-rapport voor Java? Voorbeeld

Wat is JasperReports voor Java?

Jasper Reports is een open-source rapportagetool voor Java die wordt gebruikt voor het rapporteren van applicaties. Deze rapportagetool helpt bij het schrijven van rijke inhoud op het scherm, naar de printer of in een verscheidenheid aan bestanden zoals HTML, PDF, XLS, RTF, CSV, XML, ODT en TXT. JasperReports kan ook worden gebruikt voor Java-compatibele applicaties zoals Java EE of webapplicaties om dynamische inhoud te genereren.

Jasper Reports installeren - Omgevingsinstellingen

Laten we nu in deze Jaspersoft Studio-tutorial het stapsgewijze proces leren voor het instellen van de JasperReports-omgeving:

Stap 1) Download Jasper Reports Community-editie
Ga hier naartoe Link en klik op de optie Nu downloaden om de Jasper Reports Community-editie te installeren.

Installeer Jasper Reports - Omgevingsinstellingen

Stap 2) Selecteer Jaspersoft Studio CE
Selecteer uit de communityedities Jaspersoft Studio CE

Installeer Jasper Reports - Omgevingsinstellingen

Stap 3) Jaspersoft Studio downloaden
Ga hier naartoe link en klik op de knop Downloaden. open het downloadbestand TIB_js-studiocomm_6.9.0_windows_x86_64.exe.TIB_js-studiocomm_6.9.0_windows_x86_64.exe.

Installeer Jasper Reports - Omgevingsinstellingen

Stap 4) Klik op de knop Akkoord
Following scherm verschijnt, selecteert u de knop Ik ga akkoord.

Installeer Jasper Reports - Omgevingsinstellingen

Stap 5) Kies locatie
Selecteer uw installatielocatie en klik op de knop Volgende.

Installeer Jasper Reports - Omgevingsinstellingen

Stap 6) De voortgang loopt nu
Op het volgende scherm ziet u de voortgang.

Installeer Jasper Reports - Omgevingsinstellingen

Stap 7) Klik op de knop Voltooien
In het volgende scherm klikt u op de knop Voltooien.

Installeer Jasper Reports - Omgevingsinstellingen

Stap 8) De voortgang is voltooid
Following scherm verschijnt in uw venster.

Installeer Jasper Reports - Omgevingsinstellingen

Stap 9) Start nu
Klik vervolgens op de optie Aan de slag.

Installeer Jasper Reports - Omgevingsinstellingen

Stap 10) Ga aan de slag met Jasper Reports studio
Following scherm verschijnt kunt u aan de slag met Jasper Reports studio.

Installeer Jasper Reports - Omgevingsinstellingen

Waarom Jasper Rapporten gebruiken?

Hier zijn veel redenen om een ​​Jasper-rapportagetool te gebruiken:

  • Het biedt prestaties voor het genereren van rapporten en levering aan gebruikers.
  • Het helpt u om uw gegevens in tekstueel of grafisch formaat weer te geven.
  • Het is een zelfstandige en ingebedde rapportageserver voor het compileren en uitvoeren van rapportages.
  • Het maakt op rollen gebaseerde toegangscontrole mogelijk voor alle rapporten in de repository.
  • Een veerbeveiligingsframework voor integratie met interne authenticatiesystemen
  • Het biedt een veilige, geplande en automatische levering van een interactieve rapportage-engine.
  • U kunt rapporten insluiten in Java- of niet-Java-applicaties.
  • Er kunnen verschillende formaten van rapporten worden geëxporteerd.
  • Ontwikkelaars kunnen op meerdere manieren data aanleveren.
  • Het kan watermerken genereren die over de primaire afbeelding worden gelegd.
  • Het biedt een complete set SOAP, REST en webservices.
  • Hiermee kunt u afzonderlijke rapportgegevens uit meerdere gegevensbronnen gebruiken.

Levenscyclus van JasperReports

In deze JasperReports-tutorial leren we nu over de levenscyclus van JasperReports.

Following zijn de algemene stroom van de levenscyclus van Jasper Reports:

Levenscyclus van JasperReports
Levenscyclus van JasperReports

Het rapport ontwerpen:

Dit zal de eerste stap zijn waarin we het JRXML-bestand maken. Het bestand is een eenvoudig XML-document dat de rapportindeling definieert. U kunt dit bestand ontwikkelen met elke teksteditor of rapportontwerper.

Als u echter de rapportontwerper gebruikt, kunnen we de lay-out van het rapport visualiseren en moet de echte structuur van de JRXML worden genegeerd.

Samenstellen van het rapport:

In deze levenscyclusfase wordt de JRXML die in de eerste fase is gebouwd, gecompileerd en wordt een binair object genaamd het Jasper-bestand (bestand met jasper xtn) gegenereerd.

Deze compilatie is gedaan om betere prestaties tijdens de uitvoering te krijgen. Deze gegenereerde Jasper-bestanden moeten samen met uw applicatie worden verzonden om de rapporten uit te voeren.

Het rapport uitvoeren:

In deze fase worden de gegevens uit de applicatie verzameld en ingevuld in het samengestelde rapportformaat. Er is een klasse genaamd net.sf.jasperreports.engine.JasperFillManager die functies biedt om de gegevens in de rapporten te vullen.

De uitvoer wordt opgeslagen in het Jasper-afdrukbestand (bestand met jprint xtn) dat kan worden gebruikt om het rapport af te drukken of te exporteren.

Het rapport exporteren naar het gewenste formaat:

In deze laatste fase moet u het eerder gemaakte Jasper-afdrukbestand exporteren naar een willekeurig formaat met behulp van de klasse JasperExportManager. Omdat Jasper meerdere exportformaten biedt, kunnen we dezelfde invoer gebruiken om verschillende representaties van de gegevens te maken.

Kenmerken van Jasper Rapporten

Nu behandelen we de functies van JasperReports in deze JasperReports stapsgewijze zelfstudie.

Hier volgen belangrijke kenmerken van de Jasper Reports-tool:

  • Biedt een flexibele rapportindeling.
  • Ontwikkelaars kunnen op meerdere manieren data aanleveren.
  • Hiermee kunt u gegevens uit meerdere gegevensbronnen accepteren.
  • Watermerken kunnen ook worden toegepast.
  • Er kunnen meerdere gegevensbronnen worden gebruikt om gegevens over te dragen.
  • U kunt subrapporten genereren
  • Het kan subrapporten genereren.
  • Het helpt u bij het exporteren van rapporten in verschillende formaten, zoals PDF, HTML, RTF, Microsoft Excel-bestanden.
  • Met de engine kunnen rapportdefinities ook grafieken bevatten.

Jasper versus Pentaho

Nu zullen we meer leren over het verschil tussen Jasper en Pentaho in deze Jasper Reporting-tutorial.

Hier zijn de belangrijkste verschillen tussen Jasper en Pentaho:

parameters Jasper pentaho
Rapporten Jasper gebruikt een rapport voor het ontwerpen van de rapporten. Er werd gebruik gemaakt van de Pentaho Report Designer.
ETL-ondersteuning Jaspersoft gebruikt de versie van Talend Open Studio voor ETL-doeleinden. Het gebruikt standaard Pentaho Data Integrator ETL-tool.
Overzicht Dashboardfunctionaliteit is alleen aanwezig in de Enterprise-editor van Jaspersoft. Pentaho biedt een breed scala aan functies in hun dashboards.
Mobiele bedrijfsinformatie Jaspersoft heeft ook betere mobiele BI. Pentaho was vroeger afhankelijk van een tool van derden om de mobiele BI-ervaring te verbeteren.
Documentatie Betere marketing, sites en documentatie. Documentatieondersteuning is slecht.
Beste eigenschap Gemakkelijker om te onderzoeken en te vinden wat u nodig heeft. Biedt datamining en iPhone-integratie
Betaalde versie De betaalde versie biedt functies zoals ad hoc vraag web Ul, dashboard creatie web Ul. Biedt functies zoals LDAP-integratie, SSO, auditing, enz.

Voorbeeld van een rapportsjabloon maken

Laten we nu in deze JasperReports-tutorial leren hoe u een rapportsjabloon maakt in JasperReports.

Het rapportsjabloonbestand dat in JasperReports wordt gebruikt, is een eenvoudig XML-bestand met de extensie jrxml. Dit bestand bevat de tag als hoofdelement. Het JasperReports-framework kan verschillende soorten gegevensbronnen verwerken.

Rapportsjabloon is ontworpen en gemaakt met behulp van de following twee stappen –

Stap 1) Het JRXML-bestand maken in Jaspersoft Studio.

  1. Ga naar bestandsoptie.
  2. Selecteer het submenu Nieuw
  3. Klik op de optie Jasper Rapport.

Voorbeeld van een rapportsjabloon maken

Stap 2) Het gewenste sjabloon selecteren.

  1. Selecteer uw sjabloon, bijvoorbeeld kers.
  2. Klik op de knop "Volgende".

Voorbeeld van een rapportsjabloon maken

Stap 3) Een bovenliggende map selecteren.

  1. Selecteer de map MyReports.
  2. Voer de bestandsnaam in, bijvoorbeeld 'Cherry Report'.
  3. Klik op de knop "Volgende".

Voorbeeld van een rapportsjabloon maken

Stap 4) In het gegevensbronvenster, klik op de knop "Nieuw" om een ​​nieuwe dataadapter te maken.

Voorbeeld van een rapportsjabloon maken

Stap 5) Een dataadapter selecteren.

  1. Selecteer data-adapter uit de lijst box. Bijvoorbeeld 'Verzameling JavaBeans'.
  2. Klik op de knop "Volgende".

Voorbeeld van een rapportsjabloon maken

Stap 6) Gegevensadapter de invoerentails en het selecteren van fabrieksklasse.

  1. Voer een naam in voor uw adapter.
  2. Selecteer de fabrieksklasse door op de knop "..." te klikken.

Voorbeeld van een rapportsjabloon maken

Stap 7) Voorvoegsel of patroon invoeren.

  1. Voer het naamvoorvoegsel of patroon in.
  2. Klik op overeenkomende items.
  3. Klik op de knop "OK".

Voorbeeld van een rapportsjabloon maken

Stap 8) Fabrieksklasse definiëren en het pad naar jar-bestanden toevoegen.

  1. Voer de naam in van een statische methode in de fabrieksklasse. In dit Jasper-rapportvoorbeeld is dit createBeanCollection.
  2. Als uw JavaBeans-definitie veldbeschrijvingen heeft en u deze als namen in Jaspersoft Studio wilt gebruiken, vinkt u veldbeschrijving gebruiken aan checkbox.
  3. Voeg een pad toe aan uw jar-bestanden.
  4. Klik op de knop “Voltooien”.

Voorbeeld van een rapportsjabloon maken

Stap 9) Klik op de knop "Volgende".

Voorbeeld van een rapportsjabloon maken

Stap 10) Gefeliciteerd! U hebt alle benodigde informatie voor het maken van rapporten met succes toegevoegd. Klik op de knop “Voltooien”.

Voorbeeld van een rapportsjabloon maken

Het rapport wordt gegenereerd zoals weergegeven in het onderstaande scherm.

Voorbeeld van een rapportsjabloon maken

Het bovenstaande bestand moet worden gecompileerd in het JasperReport Binary-formaat, dat het Jasper-bestand wordt genoemd.

De interface net.sf.jasperreports.engine.design.JRCompiler, die deel uitmaakt van de JasperReports-bibliotheek, speelt een belangrijke rol bij het samenstellen van dit rapportsjabloonbestand.

Implementatie van deze interface kan in geschreven worden Java, JavaScript, groovy, of een andere scripttaal.

U kunt een JRXML-bestand compileren in het volgendewing twee methoden:

  • Programmatische compilatie.
  • Compilatie met behulp van Apache ANT-taak.

De verschillende rapportbanden begrijpen

Following zijn een standaard rapportformaat dat wordt gebruikt door de meeste tools voor het genereren van commerciële rapporten.

  • Titel
  • Pagina hoofd
  • Kolomkop
  • Detail
  • Kolomvoettekst
  • Pagina ondertekst
  • Samengevat

Laten we elke rapportageband in detail leren:

Titel:

Deze band wordt aan het begin van het rapport weergegeven. Het kan als eerste pagina worden gebruikt door het attribuut in te stellen isTitleNewPage="true."

Pagina hoofd:

Rapportageband voor paginakop wordt aan het begin van elke pagina weergegeven. Het sluit de eerste pagina uit als de titelband wordt gebruikt en de laatste pagina als deze samenvattingsband wordt gebruikt met instelling isSummaryWithPageHeaderAndFooter="false.".

Kolomkop:

Kolomkoppen verschijnen vóór de detailband op elke pagina.

Detail:

Detailsectie herhaald voor elke record in de geleverde gegevensbron. Het maakte het ook mogelijk om meerdere detailbanden te hebben (1, 2, etc.)

Kolomvoettekst:

Dit gedeelte verschijnt onder de detailband op elke pagina waar de detailband aanwezig is. De standaardinstelling is het einde van de pagina, maar u kunt dit wijzigen onder de laatste detailband door het attribuut in te stellen isFloatColumnFooter=" true."

Pagina ondertekst:

Deze sectie wordt aan het einde van elke pagina weergegeven, exclusief de samenvattingsband, de titelband, de en de laatste niet-samenvattingsband.

Voettekst laatste pagina:

Deze sectie verschijnt op de vorige pagina (als er geen samenvattingsband wordt gegeven) in plaats van de normale paginavoettekst.

Overzicht:

Het samenvattingsgedeelte verschijnt alleen aan het einde van het rapport op een nieuwe pagina. wanneer isSummaryNewPage="true" is ingesteld en waarbij de paginakop- en voettekst is ingesteld isSummaryWithPageHeaderAndFooter="true".

Groepskop:

Deze sectie verschijnt alleen als deze elke keer wordt gedefinieerd als de groepsexpressie vóór de detailband verandert.

Groepsvoettekst:

Deze sectie wordt alleen weergegeven als er elke keer een groep wordt gedefinieerd voordat de groepsexpressie na de detailband verandert.

Achtergrond:

Het wordt op alle pagina's weergegeven als achtergrond voor alle andere rapportagebanden.

Geen gegevens:

Deze band verschijnt wanneer er geen gegevensbron is doorgegeven, of de gegevensbron leeg is en wanneerNoDataType=”NoDataSection” is ingesteld.

Uitdagingen bij het maken van JasperReports

Hier volgen enkele uitdagingen waarmee u te maken krijgt bij het maken van Jasper Reports:

  • Kernveranderingen – Het bedrijf verandert of verbetert. Het is nodig om de kernlogica van het rapport te veranderen.
  • Ingewikkelde rapporten – subrapporten en kruistabellenrapporten zijn een goed voorbeeld.
  • Grafiekrapporten of visuele grafieken, bijvoorbeeld grafiek-, XY-lijn-, cirkel-, staaf-, tijdreeks- en metergrafieken.

Nadelen van het gebruik van Jasper Reports

Hier volgen de nadelen/nadelen van het gebruik van Jasper Reports.

  • Zodra u wijzigingen aanbrengt in delen van het pakket en functies verwijdert, is het erg moeilijk om terug te keren naar de standaardpakketinstelling.
  • Het is te rigide, het bewerken van lijnen en het maken van kruistabellen is een uitdagende taak.
  • Sommige veel voorkomende taken, zoals het opgeven van subtotalen voor een gegroepeerd rapport, zijn eenvoudiger in de andere twee rapportontwerpers.
  • Jasper vereist dat u rapporten samenstelt voordat u ze uitvoert. Dit betekent dat rapportontwikkelaars de volledige Java SDK moeten hebben geïnstalleerd.
  • Wanneer u het rapport bewerkt, wordt soms niet hetzelfde voorbeeld weergegeven als op internet.

Samengevat

  • JasperReports is een open-source Java-rapportage-engine. Deze Java-klassebibliotheek biedt rapportagemogelijkheden voor uw toepassing.
  • Jasper Reports biedt prestaties voor het genereren van rapporten en levert deze aan gebruikers.
  • De levenscyclus van Jasper Reports omvat 1) het ontwerpen van rapporten, 2) het samenstellen van rapporten, 3) het uitvoeren van het rapport en 4) het exporteren van het rapport naar het gewenste formaat.
  • In Jasper Reports kunt u meerdere gegevensbronnen maken om gegevens over te dragen.
  • Het grote verschil tussen Jasper en Pentaho is dat Jasper Reports een rapport gebruikt voor het ontwerpen van de rapporten pentaho maakt gebruik van de Pentaho Report Designer.
  • Het rapportsjabloonbestand dat in JasperReports wordt gebruikt, is een eenvoudig XML-bestand met de extensie jrxml.
  • Belangrijke rapportbanden zijn: 1) Titel 2) Paginakop 3) Kolomkop 4) Detail 5) Kolomvoettekst 6) Paginavoettekst en 7) Samenvatting.
  • De grootste uitdaging bij het gebruik van Jasper Reports is dat u de kernlogica van het rapport moet wijzigen als de bedrijfslogica verandert.
  • Het grootste nadeel van Jasper Reports is dat wanneer u wijzigingen aanbrengt in delen van het pakket, het moeilijk is om terug te keren naar de standaardpakketinstelling.