Tutorial JasperReports: Pentru ce este raportul Jasper Java? Exemplu
Pentru ce este JasperReports Java?
JasperReports este un instrument de raportare open-source pentru Java care este utilizat pentru raportarea aplicaศiilor. Acest instrument de raportare ajutฤ la scrierea conศinutului bogat pe ecran, pe imprimantฤ sau รฎntr-o varietate de fiศiere precum HTML, PDF, XLS, RTF, CSV, XML, ODT ศi TXT. JasperReports poate fi folosit ศi pentru Java-aplicaศii activate cum ar fi Java EE sau aplicaศii web pentru a genera conศinut dinamic.
Cum se instaleazฤ Jasper Reports - Configurarea mediului
Acum, รฎn acest tutorial Jaspersoft Studio, sฤ รฎnvฤศฤm procesul pas cu pas pentru configurarea mediului JasperReports:
Pas 1) Descฤrcaศi ediศia comunitฤศii Jasper Reports
Du-te la asta Link ศi faceศi clic pe opศiunea Download Now pentru a instala Jasper Reports Community edition.
Pas 2) Selectaศi Jaspersoft Studio CE
Din ediศiile comunitฤศii, selectaศi Jaspersoft Studio CE
Pas 3) Descฤrcaศi Jaspersoft Studio
Du-te la asta legฤturฤ ศi faceศi clic pe butonul Descฤrcare. deschideศi fiศierul de descฤrcare TIB_js-studiocomm_6.9.0_windows_x86_64.exe.TIB_js-studiocomm_6.9.0_windows_x86_64.exe.
Pas 4) Faceศi clic pe butonul de acord
Va apฤrea urmฤtorul ecran, selectaศi butonul Sunt de acord.
Pas 5) Alegeศi locaศia
Selectaศi locaศia de instalare ศi faceศi clic pe butonul Urmฤtorul.
Pas 6) Progresul merge acum
Veศi vedea progresul pe urmฤtorul ecran.
Pas 7) Faceศi clic pe butonul de finalizare
รn ecranul urmฤtor, faceศi clic pe butonul de finalizare.
Pas 8) Progresul este complet
Urmฤtorul ecran va apฤrea รฎn fereastra dvs.
Pas 9) Cumpฤrฤ
Apoi, faceศi clic pe opศiunea รncepeศi.
Pas 10) รncepeศi sฤ lucraศi cu studioul Jasper Reports
Va apฤrea urmฤtorul ecran, puteศi รฎncepe sฤ lucraศi cu Jasper Reports Studio.
De ce sฤ folosiศi Jasper Reports?
Iatฤ mai multe motive pentru a utiliza un instrument de raportare Jasper:
- Oferฤ performanศฤ de generare a rapoartelor ศi livrare cฤtre utilizatori.
- Vฤ ajutฤ sฤ vฤ reprezentaศi datele รฎn format textual sau grafic.
- Este un server de raportare autonom ศi รฎncorporat pentru compilarea ศi execuศia rapoartelor.
- Permite controlul accesului bazat pe roluri la toate rapoartele din depozit.
- Un cadru de securitate de primฤvarฤ pentru integrarea cu sistemele interne de autentificare
- Oferฤ un motor de raportare interactiv securizat, programat ศi cu livrare automatฤ.
- Puteศi รฎncorpora rapoarte รฎn Java sau non-Java Aplicaศie.
- Pot fi exportate diferite formate de rapoarte.
- Dezvoltatorii pot furniza date รฎn mai multe moduri.
- Poate genera filigrane care sunt aศezate peste imaginea primarฤ.
- Oferฤ un set complet de SOAP, REST ศi servicii web.
- Vฤ permite sฤ utilizaศi un singur raport de date din mai multe surse de date.
Ciclul de viaศฤ al JasperReports
Acum, รฎn acest tutorial JasperReports, vom afla despre Ciclul de viaศฤ al JasperReports.
Urmฤtoarele sunt fluxul general al ciclului de viaศฤ al rapoartelor Jasper:

Proiectarea raportului:
Acesta va fi primul pas รฎn care creฤm fiศierul JRXML. Fiศierul este un document XML simplu care defineศte aspectul raportului. Puteศi dezvolta acest fiศier utilizรขnd orice editor de text sau designer de rapoarte.
Cu toate acestea, dacฤ utilizaศi proiectantul de rapoarte, putem vizualiza aspectul raportului, iar structura realฤ a JRXML ar trebui ignoratฤ.
รntocmirea raportului:
รn aceastฤ etapฤ a ciclului de viaศฤ, JRXML care este construit รฎn prima etapฤ este compilat ศi este generat un obiect binar numit fiศier Jasper (fiศier cu jasper xtn).
Aceastฤ compilare este fฤcutฤ pentru a obศine performanศe mai bune รฎn timpul execuศiei. Aceste fiศiere Jasper generate ar trebui sฤ fie livrate รฎmpreunฤ cu aplicaศia dvs. pentru a rula rapoartele.
Executarea raportului:
รn aceastฤ etapฤ, datele din aplicaศie sunt adunate ศi completate รฎn formatul de raport compilat. Existฤ o clasฤ numitฤ net.sf.jasperreports.engine.JasperFillManager care oferฤ funcศii pentru a completa datele din rapoarte.
Ieศirea va fi stocatฤ รฎn fiศierul de imprimare Jasper (fiศier cu jprint xtn) care poate fi folosit pentru a tipฤri sau exporta raportul.
Exportarea raportului รฎn formatul dorit:
รn aceastฤ ultimฤ etapฤ, trebuie sฤ exportaศi fiศierul de imprimare Jasper care a fost creat anterior รฎn orice format folosind clasa JasperExportManager. Deoarece Jasper oferฤ mai multe formate de exporturi, putem folosi aceeaศi intrare pentru a crea diferite reprezentฤri ale datelor.
Caracteristicile Jasper Reports
Acum, vom acoperi caracteristicile JasperReports รฎn acest tutorial pas cu pas JasperReports.
Iatฤ caracteristicile importante ale instrumentului Jasper Reports:
- Oferฤ un aspect flexibil al raportului.
- Dezvoltatorii pot furniza date รฎn mai multe moduri.
- Vฤ permite sฤ acceptaศi date din mai multe surse de date.
- Se pot aplica ศi filigrane.
- Pentru a transfera date pot fi utilizate mai multe surse de date.
- Puteศi genera subrapoarte
- Poate genera subrapoarte.
- Vฤ ajutฤ sฤ exportaศi rapoarte รฎntr-o varietate de formate, cum ar fi PDF, HTML, RTF, Microsoft Fiศiere Excel.
- Motorul permite definiศiilor rapoartelor sฤ includฤ diagrame.
Jasper vs. Pentaho
Acum, vom afla despre diferenศa dintre Jasper ศi Pentaho รฎn acest tutorial Jasper Reporting.
Iatฤ diferenศele majore dintre Jasper ศi Pentaho:
| parametrii | Jasper | Pentaho |
|---|---|---|
| Rapoarte | Jasper foloseศte un raport pentru proiectarea rapoartelor. | A folosit Pentaho Report Designer. |
| Suport ETL | Jaspersoft foloseศte versiunea Talend Open Studio รฎn scopuri ETL. | Utilizeazฤ Pentaho Data Integrator ca implicit instrument ETL. |
| Panou | Funcศionalitatea tabloului de bord este prezentฤ numai รฎn editorul Enterprise al Jaspersoft. | Pentaho oferฤ o gamฤ largฤ de funcศii รฎn tablourile de bord. |
| Mobile Business Intelligence | Jaspersoft are ศi o BI mobilฤ mai bunฤ. | Pentaho a folosit nevoia sฤ se bazeze pe un instrument terศฤ parte pentru a รฎmbunฤtฤศi experienศa BI mobilฤ. |
| Documentaศie | Marketing, site-uri ศi documentaศie mai bune. | Suportul documentaศiei este slab. |
| Cea mai bunฤ caracteristicฤ | Mai uศor sฤ cercetezi ศi sฤ gฤseศti ceea ce ai nevoie. | Oferฤ extragere de date ศi integrare iPhone |
| Versiunea plฤtitฤ | Versiunea cu platฤ oferฤ funcศii precum interogare ad-hoc web Ul, crearea tabloului de bord web Ul. | Oferฤ caracteristici precum integrarea LDAP, SSO, auditare etc. |
Crearea unui exemplu de ศablon de raport
Acum, รฎn acest tutorial JasperReports, sฤ รฎnvฤศฤm cum sฤ creฤm un ศablon de raport รฎn JasperReports.
Fiศierul ศablon de raport utilizat รฎn JasperReports este un fiศier XML simplu cu extensia jrxml. Acest fiศier conศine eticheta ca element rฤdฤcinฤ. Cadrul JasperReports poate gestiona diferite tipuri de surse de date.
ศablonul de raport este conceput ศi creat utilizรขnd urmฤtorii doi paศi โ
Pas 1) Crearea fiศierului JRXML รฎn Jaspersoft Studio.
- Accesaศi opศiunea fiศier.
- Selectaศi submeniul Nou
- Faceศi clic pe opศiunea Jasper Report.
Pas 2) Selectarea ศablonului dorit.
- Selectaศi ศablonul dvs., de exemplu, cireศ.
- Faceศi clic pe butonul โNextโ.
Pas 3) Selectarea unui folder pฤrinte.
- Selectaศi folderul MyReports.
- Introduceศi numele fiศierului, de exemplu, โCherry Reportโ.
- Faceศi clic pe butonul โNextโ.
Pas 4) รn fereastra Sursฤ de date, faceศi clic pe butonul โNouโ pentru a crea un nou adaptor de date.
Pas 5) Selectarea unui adaptor de date.
- Selectaศi adaptorul de date din caseta de listฤ. De exemplu, โColecศia de JavaFasole.โ
- Faceศi clic pe butonul โNextโ.
Pas 6) Introducerea detaliilor adaptorului de date ศi selectarea clasei din fabricฤ.
- Introduceศi un nume pentru adaptorul dvs.
- Selectaศi clasa din fabricฤ fฤcรขnd clic pe butonul โโฆโ.
Pas 7) Introducerea prefixului sau modelului.
- Introduceศi prefixul sau modelul numelui.
- Faceศi clic pe elementele care se potrivesc.
- Faceศi clic pe butonul โOKโ.
Pas 8) Definirea clasei din fabricฤ ศi adฤugarea cฤii la fiศierele jar.
- Introduceศi numele unei metode statice รฎn clasa fabricฤ. รn acest exemplu de rapoarte Jasper, acesta este createBeanCollection.
- Dacฤ dvs. JavaDefiniศia Beans are descrieri de cรขmp ศi aศi dori sฤ le utilizaศi ca nume รฎn Jaspersoft Studio, bifaศi caseta de selectare Use field description.
- Adฤugaศi o cale la fiศierele dvs. jar.
- Faceศi clic pe butonul โTerminareโ.
Pas 9) Faceศi clic pe butonul โNextโ.
Pas 10) Felicitฤri! Aศi adฤugat cu succes toate informaศiile necesare pentru crearea rapoartelor. Faceศi clic pe butonul โTerminareโ.
Raportul va fi generat aศa cum se aratฤ รฎn ecranul de mai jos.
Fiศierul de mai sus necesitฤ compilare รฎn formatul binar JasperReport, care se numeศte fiศierul jasper.
Interfaศa net.sf.jasperreports.engine.design.JRCompiler, care face parte din biblioteca JasperReports, joacฤ un rol important รฎn compilarea acestui fiศier ศablon de raport.
Implementarea acestei interfeศe poate fi scrisฤ Java, JavaScenariu, Groovy, sau orice alt limbaj de scripting.
Puteศi compila un fiศier JRXML รฎn urmฤtoarele douฤ metode:
- Compilare programaticฤ.
- Compilare folosind sarcina Apache ANT.
รnศelegerea diferitelor benzi de raportare
Urmฤtoarele sunt formatul standard de raport adoptat de majoritatea instrumentelor de generare a rapoartelor comerciale.
- Titlu
- Antetul paginii
- Antetul coloanei
- Detaliu
- Subsolul coloanei
- Subsolul paginii
- Rezumat
Sฤ รฎnvฤศฤm รฎn detaliu fiecare bandฤ de raportare:
Titlu:
Aceastฤ bandฤ este afiศatฤ la รฎnceputul raportului. Poate fi folosit ca prima paginฤ prin setarea atributului isTitleNewPage="true."
Antetul paginii:
Banda de raportare a antetului paginii este afiศatฤ la รฎnceputul fiecฤrei pagini. Exclude prima paginฤ dacฤ este utilizatฤ banda de titlu ศi ultima paginฤ dacฤ aceastฤ bandฤ de rezumat este utilizatฤ cu setare isSummaryWithPageHeaderAndFooter="false.".
Antetul coloanei:
Antetele coloanelor apar รฎnaintea benzii de detalii de pe fiecare paginฤ.
Detaliu:
Secศiunea de detalii repetatฤ pentru fiecare รฎnregistrare din sursa de date furnizatฤ. De asemenea, permitea a avea mai multe benzi de detalii (1, 2, etc.)
Subsolul coloanei:
Aceastฤ secศiune apare sub banda de detalii de pe fiecare paginฤ รฎn care este prezentฤ banda de detalii. Setarea implicitฤ este sfรขrศitul paginii, dar aceasta poate fi comutatฤ la sub ultima bandฤ de detalii prin setarea atributului isFloatColumnFooter=" true."
Subsolul paginii:
Aceastฤ secศiune va fi afiศatฤ la sfรขrศitul fiecฤrei pagini, excluzรขnd banda rezumat, banda de titlu, ศi ultima bandฤ non-rezumat.
Subsolul ultimei pagini:
Aceastฤ secศiune apare pe pagina anterioarฤ (dacฤ nu este datฤ o bandฤ de rezumat) รฎn locul Subsolului paginii normale.
Rezumat:
Secศiunea rezumat apare doar la sfรขrศitul raportului pe o paginฤ nouฤ. cรขnd isSummaryNewPage="true" este setat ศi cu antetul ศi subsolul paginii este setat isSummaryWithPageHeaderAndFooter="true".
Antet grup:
Aceastฤ secศiune apare numai atunci cรขnd este definitฤ de fiecare datฤ cรขnd expresia grupului se schimbฤ รฎnaintea benzii de detalii.
Subsolul grupului:
Aceastฤ secศiune se afiศeazฤ numai dacฤ un grup este definit de fiecare datฤ รฎnainte ca expresia grupului sฤ se schimbe dupฤ banda de detalii.
Context:
Este afiศat pe toate paginile ca fundal pentru toate celelalte benzi de raportare.
Nu existฤ date:
Aceastฤ bandฤ va apฤrea cรขnd nu a fost transmisฤ nicio sursฤ de date sau cรขnd sursa de date este goalฤ ศi cรขnd NoDataType=โNoDataSectionโ este setat.
Provocฤri cu care se confruntฤ la crearea JasperReports
Iatฤ cรขteva provocฤri cu care te vei confrunta รฎn timp ce creezi rapoarte Jasper:
- Modificฤri de bazฤ โ modificฤrile sau รฎmbunฤtฤศirile de afaceri. Este necesar sฤ se schimbe logica de bazฤ a raportului.
- Rapoarte complicate โ subrapoartele ศi rapoartele รฎncruciศate sunt un bun exemplu.
- Rapoarte grafice sau diagrame vizuale, de exemplu, grafice, linie XY, piese, bare, serii cronologice ศi diagrame cu contoare.
Dezavantajele utilizฤrii Jasper Reports
Iatฤ dezavantajele/dezavantajele utilizฤrii Jasper Reports.
- Odatฤ ce รฎncepeศi sฤ faceศi orice modificare cu pฤrศi ale pachetului ศi sฤ eliminaศi funcศii, este foarte dificil sฤ reveniศi la setarea implicitฤ a pachetului.
- Este prea rigid, editarea liniilor ศi crearea de file รฎncruciศate este o sarcinฤ dificilฤ.
- O anumitฤ sarcinฤ comunฤ, cum ar fi specificarea subtotalurilor pentru un raport grupat, este mai uศoarฤ รฎn ceilalศi doi designeri de rapoarte.
- Jasper necesitฤ sฤ compilaศi rapoarte รฎnainte de a le rula. Aceasta รฎnseamnฤ cฤ dezvoltatorii de rapoarte trebuie sฤ aibฤ รฎntregul Java SDK instalat.
- Uneori, atunci cรขnd editaศi raportul, acesta nu afiศeazฤ aceeaศi previzualizare ca cea afiศatฤ pe web.
Rezumat
- JasperReports este o sursฤ deschisฤ Java motor de raportare. Acest Java biblioteca de clase oferฤ capabilitฤศi de raportare pentru aplicaศia dvs.
- Jasper Reports oferฤ performanศฤ de generare de rapoarte ศi livrare cฤtre utilizatori.
- Ciclul de viaศฤ al rapoartelor Jasper include 1) proiectarea rapoartelor, 2) Compilarea rapoartelor, 3) Executarea raportului ศi 4) Exportarea raportului รฎn formatul dorit.
- รn Jasper Reports, puteศi crea mai multe surse de date pentru a transfera date.
- Diferenศa majorฤ dintre Jasper ศi Pentaho este cฤ rapoartele Jasper utilizeazฤ un raport pentru proiectarea rapoartelor รฎn timp ce Pentaho utilizeazฤ Pentaho Report Designer.
- Fiศierul ศablon de raport utilizat รฎn JasperReports este un fiศier XML simplu cu extensia jrxml.
- Benzile Rapoarte importante sunt: โโ1) Titlu 2) Antet paginฤ 3) Antet coloanฤ 4) Detaliu 5) Subsol coloane 6) Subsol paginฤ ศi, 7) Rezumat.
- Cea mai mare provocare a utilizฤrii Jasper Reports este cฤ trebuie sฤ schimbaศi logica de bazฤ a raportului dacฤ logica de afaceri se schimbฤ.
- Cel mai mare dezavantaj al Jasper Reports este cฤ atunci cรขnd faceศi orice modificare cu pฤrศi ale pachetului, este greu sฤ reveniศi la setarea implicitฤ a pachetului.





















