JasperReports - Konfiguracja środowiska

JasperReports to czysta biblioteka Java, a nie samodzielna aplikacja. Nie może działać samodzielnie, dlatego musi być osadzony w innej aplikacji Java po stronie klienta lub serwera. Ponieważ jest oparty na języku Java, można go uruchomić na dowolnej platformie obsługującej język Java (JDK 1.3 i nowsze). Wszystkie funkcje JasperReport są zebrane w jednym pliku JAR, jasperreports-xxxjar. Ten plik JAR wraz z wymaganymi i opcjonalnymi bibliotekami (plik .ZIP) można pobrać z witryny: JasperReport Library Link . Pobierz najnowszą wersję z tego łącza.

Plik ZIP zawiera plik JAR JasperReports wraz z kodem źródłowym JasperReports, zależnymi plikami JAR i wieloma przykładami demonstrującymi funkcje JasperReport.

JasperReport Environment

Aby rozpocząć tworzenie raportów, musimy przygotować gotowe środowisko. Rozpakuj pobrany plik JasperReport.ZIP do dowolnej lokalizacji (w naszym przypadku rozpakowaliśmy go do C: \ tools \ jasperreports-5.0.1). Struktura katalogów wyodrębnionego pliku jest taka sama, jak pokazano poniżej -

Oto szczegóły wszystkich katalogów -

  • build - zawiera skompilowane pliki klas JasperReport.

  • demo - zawiera różne przykłady demonstrujące kilka aspektów funkcjonalności JasperReports.

  • dist - zawiera plik jasperreports-xxxjar. Dodamy ten plik JAR do naszej CLASSPATH, aby skorzystać z JasperReports.

  • docs - zawiera lokalną kopię dokumentacji JasperReports.

  • lib - zawiera wszystkie potrzebne pliki JAR, zarówno do tworzenia JasperReports, jak i do używania ich w naszych aplikacjach.

  • src - zawiera kod źródłowy JasperReports.

  • build.xml - plik kompilacji ANT do budowania kodu źródłowego JasperReports. Jeśli nie zamierzamy modyfikować JasperReports, nie musimy używać tego pliku, ponieważ JasperReports jest rozpowszechniany w skompilowanej formie.

  • changes.txt - dokument tekstowy wyjaśniający różnice między aktualną i poprzednią wersją biblioteki klas JasperReports.

  • license.txt - dokument tekstowy zawierający pełny tekst licencji LGPL (Lesser General Public License).

  • readme.txt - dokument tekstowy zawierający instrukcje dotyczące budowania i wykonywania dostarczonych przykładów.

Zasadniczo do generowania raportów używamy tylko jasperreports-xxxjar w katalogu dist i JAR w katalogu lib . Ponieważ JasperReports jest narzędziem o otwartym kodzie źródłowym, jeśli jakakolwiek usterka lub błąd zostanie rozpoznany podczas wykonywania w jasperreports-xxxjar, możemy to naprawić i ponownie zbudować JAR za pomocą pliku build.xml.

Ustaw CLASSPATH

Aby korzystać z JasperReport, musimy ustawić następujące pliki na naszą ścieżkę CLASSPATH -

  • jasperreports-xxxjar, gdzie xxx to wersja JasperReports. Znaleziono to w katalogu C: \ tools \ jasperreports-xxx \ dist).

  • Wszystkie pliki JAR w podkatalogu lib (C: \ tools \ jasperreports-xxx \ lib).

W czasie instalacji korzystaliśmy z JasperReport w wersji 5.0.1. Kliknij prawym przyciskiem myszy „Mój komputer” i wybierz „Właściwości”, a następnie kliknij przycisk „Zmienne środowiskowe” w zakładce „Zaawansowane”. Teraz zaktualizuj zmienną „Path” o toC:\tools\jasperreports-5.0.1\dist\jasperreports-5.0.1.jar:C:\tools\jasperreports-5.0.1\lib. Teraz jesteś gotowy do tworzenia raportów.

We wszystkich przykładach w tym samouczku do generowania raportów używaliśmy zadań ANT. Plikbuilddba o zaimportowanie wszystkich wymaganych plików JAR do generowania raportów. Dlatego ustawienie CLASSPATH, jak wspomniano powyżej, pomoże tylko tym, którzy chcą generować raporty bez użycia ANT.

Konfiguracja kompilacji

Wszystkie przykłady w tym samouczku -

  • zostały napisane przy użyciu prostego edytora tekstu.

  • zostały zapisane w katalogu C: \ tools \ jasperreports-5.0.1 \ test \ src \ com \ tutorialspoint.

  • zostały skompilowane i wykonane z wiersza poleceń przy użyciu Apache ANT. Użyjemy plikubaseBuild.xml plik, który zaimportujemy w ANT build.xmlplik w kolejnych rozdziałach. Zapisz ten plik w C: \ tools \ jasperreports-5.0.1 \ test. Poniżej znajduje się zawartość pliku baseBuild.xml -

<?xml version = "1.0" encoding = "UTF-8"?>
<project name = "JasperReportExample" basedir = ".">
   <description>Previews our JasperReport XML Design</description>
   <property name = "file.name" value = "jasper_report_template" />
   
   <!-- Directory where the JasperReports project file was extracted
   needs to be changed to match the local environment -->
   <property name = "jasper.dir" value = "../" />
   <property name = "dist.dir" value = "${jasper.dir}/dist" />
   <property name = "lib.dir" value = "${jasper.dir}/lib" />
   <property name = "src.dir" value = "src" />
   <property name = "classes.dir" value = "classes" />
   <property name = "main-class" value = "com.tutorialspoint.HelpMe" />

   <path id = "classpath">
      <pathelement location = "./" />
      <pathelement location = "${classes.dir}" />
	  
      <fileset dir = "${lib.dir}">
         <include name = "**/*.jar" />
      </fileset>
	  
      <fileset dir = "${dist.dir}">
         <include name = "**/*.jar" />
      </fileset>
   </path>
   
   <target name = "compile" depends = "clean-sample">
      <mkdir dir = "${classes.dir}"/>
		
      <javac srcdir = "${src.dir}" destdir = "${classes.dir}" 
         classpathref = "classpath" />
   </target>
   
   <target name = "run" depends = "compile">
      <echo message = "Running class : ${main-class}"/>
	  
      <java fork = "true" classname = "${main-class}">
         <classpath>
            <path refid = "classpath" />
         </classpath>
      </java>
   </target>
   
   <target name = "clean-sample">
      <delete dir = "${classes.dir}" />
      <delete file = "./${file.name}.jasper" />
      <delete file = "./${file.name}.jrprint" />
   </target>
   
</project>

Ten plik ma wszystkie wymagane cele, takie jak czyszczenie katalogów, kompilowanie plików java i wykonywanie plików klas.

Poniżej znajdują się szczegóły wymienione w różnych katalogach w baseBuild.xml. Zakładając, że bieżący katalog to C: \ tools \ jasperreports-5.0.1 \ test) -

  • jasper.dir - to katalog C: \ tools \ jasperreports-5.0.1

  • lib.dir - to katalog C: \ tools \ jasperreports-5.0.1 \ lib

  • src.dir - to C: \ tools \ jasperreports-5.0.1 \ test \ src

  • classes.dir - to C: \ tools \ jasperreports-5.0.1 \ test \ classes

  • main-class - com.tutorialspoint.HelpMe. Ta klasa jest prostą klasą wykonywaną, gdy żadna nazwa pliku klasy nie jest przekazywana z wiersza poleceń. Zapisz ten plik w C: \ tools \ jasperreports-5.0.1 \ test \ src \ com \ tutorialspoint.

package com.tutorialspoint;

public class HelpMe {
   public static void main(String[] args) {
      System.out.println("This is the default class executed."
         + "Please pass the fully qualified class" + " name to be executed as command line"
         + " parameter, for example," + " com.tutorialspoint.HelpMe ");
   }
}

Klasy Jasper Managers

Istnieje wiele klas, które zostaną wykorzystane do skompilowania projektu raportu JRXML, wypełnienia raportu, wydrukowania raportu, eksportu do plików PDF, HTML i XML, przeglądania wygenerowanych raportów i projektowania raportów.

Lista tych klas to -

  • net.sf.jasperreports.engine.JasperCompileManager - służy do kompilowania szablonu raportu JRXML.

  • net.sf.jasperreports.engine.JasperFillManager - służy do wypełniania raportu danymi ze źródła danych.

  • net.sf.jasperreports.engine.JasperPrintManager - Służy do drukowania dokumentów wygenerowanych przez bibliotekę JasperReports.

  • net.sf.jasperreports.engine.JasperExportManager - służy do uzyskiwania zawartości PDF, HTML lub XML dla dokumentów utworzonych w procesie wypełniania raportów.

  • net.sf.jasperreports.view.JasperViewer - reprezentuje prostą aplikację Java Swing, która może ładować i wyświetlać raporty.

  • net.sf.jasperreports.view.JasperDesignViewer - używany w czasie projektowania do przeglądania szablonów raportów.

Konfigurowanie Apache ANT

Zamierzamy zbudować wszystkie przykłady przy użyciu Apache ANT. Więc uprzejmie sprawdź rozdział ANT - Konfiguracja środowiska, aby skonfigurować Apache ANT w swoim systemie.