JasperReports Tutorial: Hvad er Jasper Report for Java? Eksempel
Hvad er JasperReports til Java?
Jasper Rapporter er et open source-rapporteringsværktøj til Java der bruges til indberetning af ansøgninger. Dette rapporteringsværktøj hjælper med at skrive rigt indhold på skærmen, til printeren eller ind i en række filer som HTML, PDF, XLS, RTF, CSV, XML, ODT og TXT. JasperReports kan også bruges til Java-aktiverede applikationer som Java EE eller webapplikationer til at generere dynamisk indhold.
Sådan installeres Jasper Reports- Environment Setup
Lad os nu i denne Jaspersoft Studio-tutorial lære trin for trin-processen til JasperReports-miljøopsætning:
Trin 1) Download jasper reports community-udgave
Gå til dette Link og klik på Download Now-indstillingen for at installere Jasper Reports Community-udgave.
Trin 2) Vælg Jaspersoft Studio CE
Vælg Jaspersoft Studio CE fra fællesskabsudgaverne
Trin 3) Download Jaspersoft Studio
Gå til dette link og klik på Download-knappen. åbn download-filen TIB_js-studiocomm_6.9.0_windows_x86_64.exe.TIB_js-studiocomm_6.9.0_windows_x86_64.exe.
Trin 4) Klik på knappen accept
Følgende skærm vises, vælg knappen Jeg accepterer.
Trin 5) Vælg placering
Vælg din installationsplacering, og klik på knappen Næste.
Trin 6) Fremskridtet kører nu
Du vil se fremskridtene på næste skærmbillede.
Trin 7) Klik på knappen Afslut
På det næste skærmbillede skal du klikke på knappen Afslut.
Trin 8) Fremskridtet er fuldendt
Følgende skærm vises i dit vindue.
Trin 9) Kom i gang
Klik derefter på Kom godt i gang.
Trin 10) Begynd at arbejde med Jasper Reports studio
Følgende skærm vises, du kan begynde at arbejde med Jasper Reports studio.
Hvorfor bruge Jasper Reports?
Her er mange grunde til at bruge et Jasper-rapportværktøj:
- Det tilbyder rapportgenereringsydelse og levering til brugere.
- Det hjælper dig med at repræsentere dine data i tekst- eller grafisk format.
- Det er en selvstændig og indlejret rapporteringsserver til rapportering kompilering og eksekvering.
- Det tillader rollebaseret adgangskontrol til alle rapporter i lageret.
- En fjedersikkerhedsramme til integration med in-house autentificeringssystemer
- Det tilbyder en sikker, tidsplan og automatisk levering interaktiv rapporteringsmotor.
- Du kan integrere rapporter i Java eller ikke-Java Ansøgning.
- Forskellige formater af rapporter kan eksporteres.
- Udviklere kan levere data på flere måder.
- Det kan generere vandmærker, der lægges over det primære billede.
- Det tilbyder et komplet sæt af SOAP, REST og webtjenester.
- Det giver dig mulighed for at bruge enkelt rapportdata fra flere datakilder.
Livscyklus for JasperReports
Nu i denne JasperReports tutorial, vil vi lære om Lifecycle of JasperReports.
Følgende er generel flow af livscyklus for Jasper-rapporter:
Udformning af rapporten:
Dette vil være det første trin, hvor vi opretter JRXML-filen. Det er filen er et simpelt XML-dokument, der definerer rapportlayoutet. Du kan udvikle denne fil ved hjælp af en hvilken som helst teksteditor eller rapportdesigner.
Men hvis du bruger rapportdesigneren, kan vi visualisere rapportens layout, og den reelle struktur af JRXML bør ignoreres.
Udarbejdelse af rapporten:
I dette livscyklusstadie kompileres JRXML, som er bygget i første fase, og et binært objekt kaldet Jasper-filen (fil med jasper xtn) genereres.
Denne kompilering er lavet for at få bedre ydeevne under udførelse. Disse genererede Jasper-filer skal sendes sammen med din applikation for at køre rapporterne.
Udførelse af rapporten:
I denne fase samles dataene fra applikationen og udfyldes i det kompilerede rapportformat. Der er en klasse kaldet net.sf.jasperreports.engine.JasperFillManager, som tilbyder funktioner til at udfylde dataene i rapporterne.
Outputtet vil blive gemt i Jasper print-fil (fil med jprint xtn), som kan bruges til at udskrive eller eksportere rapporten.
Eksport af rapporten til det ønskede format:
I denne sidste fase skal du eksportere Jasper-udskriftsfilen, som er oprettet tidligere, til ethvert format ved hjælp af klassen JasperExportManager. Da Jasper tilbyder flere eksportformater, kan vi bruge det samme input til at skabe forskellige repræsentationer af dataene.
Funktioner i Jasper Reports
Nu vil vi dække funktionerne i JasperReports i denne JasperReports trin for trin tutorial.
Her er vigtige funktioner i Jasper Reports-værktøjet:
- Tilbyder fleksibelt rapportlayout.
- Udviklere kan levere data på flere måder.
- Det giver dig mulighed for at acceptere data fra flere datakilder.
- Vandmærker kan også påføres.
- Flere datakilder kan bruges til at overføre data.
- Du kan generere underrapporter
- Det kan generere underrapporter.
- Det hjælper dig med at eksportere rapporter i en række forskellige formater som f.eks PDF, HTML, RTF, Microsoft Excel-filer.
- Motoren tillader rapportdefinitioner at inkludere diagrammer.
Jasper vs. Pentaho
Nu vil vi lære om forskellen mellem Jasper og Pentaho i denne Jasper Reporting-tutorial.
Her er de store forskelle mellem Jasper og Pentaho:
parametre | Jasper | Pentaho |
---|---|---|
Rapporter | Jasper bruger en rapport til at designe rapporterne. | Det brugte Pentaho Report Designer. |
ETL support | Jaspersoft bruger Talend Open Studio-version til ETL-formål. | Den bruger Pentaho Data Integrator som standard ETL værktøj. |
Hovedmenu | Dashboard-funktionalitet er kun til stede i Enterprise-editoren af Jaspersoft. | Pentaho tilbyder en bred vifte af funktioner i deres dashboards. |
Mobil Business Intelligence | Jaspersoft har også bedre mobil BI. | Pentaho brugte behov for at stole på et tredjepartsværktøj til at forbedre mobil BI-oplevelse. |
Dokumentation | Bedre markedsføring, websteder og dokumentation. | Dokumentationsunderstøttelsen er dårlig. |
Bedste funktion | Lettere at undersøge og finde det, du har brug for. | Tilbyder Data mining og iPhone integration |
Betalt version | Den betalte version tilbyder funktioner som ad hoc-forespørgsel web Ul, oprettelse af dashboard web Ul. | Tilbyder funktioner som LDAP-integration, SSO, revision osv. |
Oprettelse af et eksempel på en rapportskabelon
Lad os nu i denne JasperReports-tutorial lære, hvordan du opretter en rapportskabelon i JasperReports.
Rapportskabelonfilen, der bruges i JasperReports, er en simpel XML-fil med jrxml-udvidelse. Denne fil indeholder tagget som dets rodelement. JasperReports framework kan håndtere forskellige typer datakilder.
Rapportskabelonen er designet og oprettet ved hjælp af følgende to trin –
Trin 1) Oprettelse af JRXML-filen i Jaspersoft Studio.
- Gå til filindstillingen.
- Vælg undermenuen Ny
- Klik på Jasper Report mulighed.
Trin 2) Valg af den ønskede skabelon.
- Vælg din skabelon, for eksempel kirsebær.
- Klik på knappen "Næste".
Trin 3) Valg af en overordnet mappe.
- Vælg mappen MyReports.
- Indtast filnavnet, for eksempel "Cherry Report."
- Klik på knappen "Næste".
Trin 4) I vinduet Datakilde, klik på knappen "Ny" for at oprette en ny dataadapter.
Trin 5) Valg af dataadapter.
- Vælg dataadapter fra listeboksen. For eksempel "Samling af Javabønner."
- Klik på knappen "Næste".
Trin 6) Indtastning af dataadapteroplysninger og valg af fabriksklasse.
- Indtast et navn til din adapter.
- Vælg fabriksklasse ved at klikke på knappen "...".
Trin 7) Indtastning af præfiks eller mønster.
- Indtast navnepræfikset eller mønsteret.
- Klik på matchende varer.
- Klik på knappen “OK”.
Trin 8) Definere fabriksklasse og tilføje stien til jar-filer.
- Indtast navnet på en statisk metode i fabriksklassen. I dette eksempel på Jasper-rapporter er dette createBeanCollection.
- Hvis din JavaBeans definition har feltbeskrivelser, og du vil gerne bruge disse som navne i Jaspersoft Studio, marker afkrydsningsfeltet brug feltbeskrivelse.
- Tilføj en sti til dine jar-filer.
- Klik på knappen "Udfør".
Trin 9) Klik på knappen "Næste".
Trin 10) Tillykke! Du har tilføjet alle nødvendige oplysninger om rapportoprettelse. Klik på knappen "Udfør".
Rapporten vil blive genereret som vist i nedenstående skærmbillede.
Ovenstående fil kræver kompilering i JasperReport Binært format, som kaldes jasper-filen.
Interface net.sf.jasperreports.engine.design.JRCompiler, som er en del af JasperReports-biblioteket, spiller en vigtig rolle i kompileringen af denne rapportskabelonfil.
Implementering af denne grænseflade kan skrives ind Java, JavaScript, Groovy, eller et hvilket som helst andet scriptsprog.
Du kan kompilere en JRXML-fil på følgende to metoder:
- Programmatisk kompilering.
- Kompilering ved hjælp af Apache ANT-opgave.
Forståelse af de forskellige rapportbånd
Følgende er standardrapportformater, der anvendes af de fleste af de kommercielle rapportgenererende værktøjer.
- Titel
- Sideoverskrift
- Kolonneoverskrift
- Detalje
- Kolonnesidefod
- Sidefod
- Resumé
Lad os lære hvert rapporteringsbånd at kende i detaljer:
Titel:
Dette bånd vises i starten af rapporten. Den kan bruges som den første side ved at indstille attributten isTitleNewPage="true."
Sidehoved:
Rapporteringsbånd for sidehoved vises i begyndelsen af hver side. Det udelukker den første side, hvis titelbåndet bruges, og den sidste side, hvis dette oversigtsbånd bruges med indstilling isSummaryWithPageHeaderAndFooter="false.".
Kolonneoverskrift:
Kolonneoverskrifter vises før detaljebåndet på hver side.
Detalje:
Detaljeafsnit gentaget for hver post i den leverede datakilde. Det tillod også at have bånd med flere detaljer (1, 2 osv.)
Kolonnesidefod:
Dette afsnit vises under detaljebåndet på hver side, hvor detaljebåndet er til stede. Standardindstillingen er slutningen af siden, men dette kan skiftes til under sidste detaljebånd ved at indstille attributten isFloatColumnFooter=" true."
Sidefod:
Denne sektion vil blive vist i slutningen af hver side, eksklusive oversigtsbånd, titelbånd, og sidste ikke-resumébånd.
Sidste sidefod:
Dette afsnit vises på den forrige side (hvis der ikke er angivet et oversigtsbånd) i stedet for den almindelige sidefod.
Sammendrag:
Opsummeringsafsnittet vises kun i slutningen af rapporten på en ny side. hvornår isSummaryNewPage="true"
er indstillet og med sidehoved og sidefod er indstillet isSummaryWithPageHeaderAndFooter="true".
Gruppeoverskrift:
Denne sektion vises kun, når den er defineret, hver gang gruppeudtrykket ændres før detaljebåndet.
Gruppesidefod:
Denne sektion vises kun, hvis en gruppe defineres hver gang, før gruppeudtrykket ændres efter detaljebåndet.
Baggrund:
Det vises på alle siderne som baggrund for alle andre rapporteringsbånd.
Ingen data:
Dette bånd vises, når ingen datakilde blev sendt, eller datakilden er tom, og når NoDataType=”NoDataSection” er indstillet.
Udfordringer, man står over for under oprettelsen af JasperReports
Her er et par udfordringer, du vil møde, når du opretter Jasper-rapporter:
- Kerneændringer – Forretningsændringer eller forbedringer. Det er nødvendigt at ændre rapportens kernelogik.
- Komplicerede rapporter – delrapporter og krydstabulatorer er et godt eksempel.
- Diagramrapporter eller visuelle diagrammer, f.eks. graf-, XY-linje-, cirkel-, søjle-, tidsserie- og målerdiagrammer.
Ulemper ved at bruge Jasper Reports
Her er ulemper/ulemper ved at bruge Jasper Reports.
- Når du først begynder at foretage ændringer med dele af pakken og fjerne funktioner, er det meget svært at komme tilbage til standardpakkeindstillingen.
- Det er for stift, redigering af linjer og oprettelse af krydsfaner er en udfordrende opgave.
- Nogle almindelige opgaver, som at angive deltotaler for en grupperet rapport, er nemmere i de to andre rapportdesignere.
- Jasper kræver, at du kompilerer rapporter, før du kører dem. Det betyder, at rapportudviklere skal have det hele Java SDK installeret.
- Nogle gange, når du redigerer rapporten, viser den ikke den samme forhåndsvisning, som den vises på nettet.
Resumé
- JasperReports er en open source Java rapporteringsmotor. Denne Java klassebibliotek tilbyder rapporteringsfunktioner til din applikation.
- Jasper Reports tilbyder rapportgenereringsydelse og levering til brugere.
- Jasper Reports livscyklus omfatter 1) design af rapporter, 2) kompilering af rapporter, 3) eksekvering af rapporten og 4) eksport af rapporten til det ønskede format.
- I Jasper Reports kan du oprette flere datakilder til at overføre data.
- Den største forskel mellem Jasper og Pentaho er, at Jasper-rapporter bruger en rapport til at designe rapporterne Pentaho bruger Pentaho Report Designer.
- Rapportskabelonfilen, der bruges i JasperReports, er en simpel XML-fil med jrxml-udvidelse.
- Vigtige rapportbånd er: 1)Titel 2) Sidehoved 3) Kolonnehoved 4) Detalje 5) Kolonnesidefod 6) Sidefod og 7) Resumé.
- Den største udfordring ved at bruge Jasper Reports er, at du skal ændre rapportens kernelogik, hvis forretningslogikken ændrer sig.
- Den største ulempe ved Jasper Reports er, at når du foretager ændringer med dele af pakken, er det svært at vende tilbage til standardpakkeindstillingen.