Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Industrial programming >> Java

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

Wat is JasperReports voor Java?

JasperReports 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 verschillende bestanden zoals HTML, PDF, XLS, RTF, CSV, XML, ODT en TXT. JasperReports kan ook worden gebruikt voor Java-enabled applicaties zoals Java EE of webapplicaties om dynamische inhoud te genereren.

In deze stapsgewijze tutorial van JasperReports leer je:

  • Wat is Jasper Reports?
  • Hoe installeer ik Jasper Reports?
  • Waarom Jasper Reports gebruiken?
  • Levenscyclus van JasperReports
  • Kenmerken van Jasper Reports
  • Jasper vs. Pentaho
  • Een voorbeeld van een rapportsjabloon maken
  • Uitdagingen bij het maken van JasperReports
  • Nadelen van het gebruik van Jasper Reports

Hoe Jasper Reports te installeren - Omgeving instellen

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

Stap 1) Download Jasper Reports Community-editie
Ga naar deze link en klik op de optie Nu downloaden om Jasper Reports Community-editie te installeren.

Stap 2) Selecteer Jaspersoft Studio CE
Selecteer Jaspersoft Studio CE uit de community-edities

Stap 3) Download Jaspersoft Studio
Ga naar deze link en klik op de knop Downloaden. open de download TIB_js-studiocomm_6.9.0_windows_x86_64.exe file.TIB_js-studiocomm_6.9.0_windows_x86_64.exe.

Stap 4) Klik op de knop Akkoord
Volgend scherm verschijnt, selecteer de knop Ik ga akkoord.

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

Stap 6) De voortgang wordt nu uitgevoerd
U ziet de voortgang op het volgende scherm.

Stap 7) Klik op de knop Voltooien
Klik in het volgende scherm op de knop Voltooien.

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

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

Stap 10) Ga aan de slag met Jasper Reports studio
Volgend scherm verschijnt dat je aan de slag kunt met Jasper Reports studio.

Waarom Jasper Reports gebruiken?

Hier zijn veel redenen om een ​​rapporttool van Jasper te gebruiken:

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

Levenscyclus van JasperReports

In deze zelfstudie van JasperReports leren we over de levenscyclus van JasperReports.

Hieronder volgen de algemene stroom van levenscyclus van Jasper-rapporten:

Het rapport ontwerpen:

Dit is de eerste stap waarin we het JRXML-bestand maken. Het is een eenvoudig XML-document dat de lay-out van het rapport 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.

Het rapport samenstellen:

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

Deze compilatie is gedaan om betere prestaties te krijgen tijdens de uitvoering. 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 Jasper-afdrukbestand dat eerder is gemaakt, 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 Reports

Nu zullen we de functies van JasperReports in deze stapsgewijze zelfstudie van JasperReports bespreken.

Hier zijn belangrijke kenmerken van de Jasper Reports-tool:

  • Biedt flexibele rapportindeling.
  • Ontwikkelaars kunnen op meerdere manieren gegevens aanleveren.
  • Hiermee kunt u gegevens uit meerdere gegevensbronnen accepteren.
  • Watermerken kunnen ook worden toegepast.
  • Meerdere gegevensbronnen kunnen 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 grafieken bevatten.

Jaspis vs. Pentaho

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

Hier zijn grote verschillen tussen Jasper en Pentaho:

Parameters Jaspis Pentaho
Rapporten Jasper gebruikt een rapport voor het ontwerpen van de rapporten. Het gebruikte de Pentaho Report Designer.
ETL-ondersteuning Jaspersoft gebruikt de Talend Open Studio-versie voor ETL-doeleinden. Het gebruikt Pentaho Data Integrator als een standaard ETL-tool.
Dashboard Dashboard-functionaliteit 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 gebruikte een tool van derden om de mobiele BI-ervaring te verbeteren.
Documentatie Betere marketing, sites en documentatie. Ondersteuning voor documentatie is slecht.
Beste eigenschap Makkelijker te onderzoeken en te vinden wat je nodig hebt. Biedt datamining en iPhone-integratie
Betaalde versie De betaalde versie biedt functies zoals ad hoc query web Ul, dashboard creatie web Ul. Biedt functies aan zoals LDAP-integratie, SSO, auditing, enz.

Een voorbeeld van een rapportsjabloon maken

Laten we nu in deze JasperReports-zelfstudie leren hoe u een rapportsjabloon kunt maken in JasperReports.

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

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

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

  1. Ga naar bestandsoptie.
  2. Selecteer het nieuwe submenu
  3. Klik op de Jasper Report-optie.

Stap 2) De gewenste sjabloon selecteren.

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

Stap 3) Een bovenliggende map selecteren.

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

Stap 4) In het venster Gegevensbron, klik op de knop "Nieuw" om een ​​nieuwe gegevensadapter te maken.

Stap 5) Een data-adapter selecteren.

  1. Selecteer data-adapter in de keuzelijst. Bijvoorbeeld:"Verzameling van JavaBeans."
  2. Klik op de knop "Volgende".

Stap 6) Gegevensadaptergegevens invoeren en fabrieksklasse selecteren.

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

Stap 7) Prefix of patroon invoeren.

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

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

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

Stap 9) Klik op de knop "Volgende".

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

Het rapport wordt gegenereerd zoals weergegeven in het onderstaande scherm.

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 worden geschreven in Java, JavaScript, Groovy of een andere scripttaal.

U kunt een JRXML-bestand op de volgende twee manieren compileren:

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

De verschillende rapportbanden begrijpen

Hieronder volgen de standaard rapportindelingen die worden gebruikt door de meeste tools voor het genereren van commerciële rapporten.

  • Titel
  • Paginakop
  • Kolomkop
  • Detail
  • Kolomvoettekst
  • Paginavoettekst
  • Samenvatting

Laten we elke rapportageband in detail leren:

Titel:

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

Paginakoptekst:

Rapportageband voor paginakoptekst weergegeven aan het begin van elke pagina. 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 elk record in de geleverde gegevensbron. Het maakte het ook mogelijk om meerdere detailbanden te hebben (1, 2, etc.)

Kolomvoettekst:

Deze sectie verschijnt onder de detailband op elke pagina waar de detailband aanwezig is. De standaardinstelling is het einde van de pagina, maar dit kan worden overgeschakeld naar de laatste detailband door het kenmerk isFloatColumnFooter=" true." in te stellen

Paginavoettekst:

Dit gedeelte wordt aan het einde van elke pagina weergegeven, met uitzondering van de samenvattingsband, de titelband, de en de laatste niet-samenvattingsband.

Voettekst laatste pagina:

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

Samenvatting:

De samenvattingssectie verschijnt alleen aan het einde van het rapport op een nieuwe pagina. wanneer isSummaryNewPage="true" is ingesteld en met paginakoptekst en -voettekst is ingesteld isSummaryWithPageHeaderAndFooter="true".

Groepskoptekst:

Dit gedeelte verschijnt alleen wanneer het wordt gedefinieerd telkens wanneer de groepsuitdrukking verandert vóór de detailband.

Groepsvoettekst:

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

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 zijn een paar uitdagingen waarmee u te maken krijgt bij het maken van Jasper Reports:

  • Kernwijzigingen – De zakelijke wijzigingen of verbeteringen. Het is vereist om de kernlogica van het rapport te wijzigen.
  • Ingewikkelde rapporten – subrapporten en kruistabellen zijn een goed voorbeeld.
  • Kaartrapporten of visuele grafieken, bijvoorbeeld grafiek-, XY-lijn-, cirkel-, staaf-, tijdreeks- en metergrafieken.

Nadelen van het gebruik van Jasper Reports

Hier zijn de voor- en 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.
  • Een veelvoorkomende taak, zoals het specificeren van subtotalen voor een gegroepeerd rapport, is gemakkelijker in de andere twee rapportontwerpers.
  • Jasper vereist dat je rapporten compileert voordat je ze uitvoert. Dit betekent dat rapportontwikkelaars de volledige Java SDK moeten hebben geïnstalleerd.
  • Soms wanneer u het rapport bewerkt, wordt niet hetzelfde voorbeeld weergegeven als op internet.

Samenvatting:

  • JasperReports is een open-source Java-rapportage-engine. Deze Java-klassebibliotheek biedt rapportagemogelijkheden voor uw toepassing.
  • Jasper Reports biedt prestaties en levering van rapporten 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, terwijl Pentaho de Pentaho Report Designer gebruikt.
  • 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 het moeilijk is om terug te gaan naar de standaard pakketinstelling als je wijzigingen aanbrengt in delen van het pakket.

Java

  1. Waar wordt Hafnium voor gebruikt?
  2. Java voor Loop
  3. C# Abstract Class-zelfstudie met voorbeeld:wat is abstractie?
  4. Wat is Java? Definitie, betekenis en kenmerken van Java-platforms
  5. JVM | Wat is Java Virtual Machine en zijn architectuur?
  6. Wat is abstractie in OOP's? Java abstracte klasse en methode
  7. Inkapseling in Java OOP's met voorbeeld
  8. Wat is klasse en object in Java OOPS? Leer met voorbeeld
  9. Java String charAt() Methode met Voorbeeld
  10. Java String endsWith() Methode met voorbeeld
  11. HashMap in Java Leer met voorbeeld