Java Spring Framework 4: PDF Erstellung mit iText

Häufig möchte man PDF-Dateien in Webprojekten dynamisch generieren und direkt an den Browser zum Download ausgeben. Das Vorgehen möchte ich euch hier exemplarisch anhand des Java Spring Framework 4 zur Rückgabe und der Bibliothek iText zur eigentlichen Erstellung der PDF-Datei aufzeigen.

Empfohlene Vorkenntnisse

  • allgemeine Java Kenntnisse
  • Erfahrung mit MVC Frameworks

Inhaltsverzeichnis

  1. Ausgangsituation
  2. PDF-Erstellung mit iText
  3. Direkte Rückgabe mit Spring Framework

1. Ausgangssituation

Ich gehe davon aus, dass ihr die entsprechenden Bibliotheken für Spring und iText bereits in euer Java Projekt importiert habt. Die Ausgabe der PDF-Datei soll über den Aufruf der Route http://projektURI/export/pdf  erfolgen.

2. PDF-Erstellung mit iText

In diesem Kapitel werden wir eine einfache Beispiel-PDF-Datei erstellen, um die Grundlagen von iText zu verstehen. In unserem Fall werden wir eine Titelseite erzeugen, mit einer Überschrift, Name des Erstellers und Erstelldatum. Der Code sollte hoffentlich ( 🙂 ) einigermaßen selbsterklärend sein:

Für unser Beispiel soll das ausreichen. Selbstverständlich ist noch einiges mehr möglich, wie Listen und Tabellen. Wer hier genauer einsteigen möchte, dem kann ich dieses Tutorial von Vogella ans Herz legen.

3. Direkte Rückgabe mit Spring Framework

Nun da wir unsere PDF Datei erstellt haben und im Arbeitsspeicher zwischengespeichert, stellt sich die Frage, wie wir die Datei direkt an den Browser zum Download ausgeben können.

Und das war’s auch schon 🙂 . Ruft ihr die Route in eurem Browser auf, wird euch die frisch generierte PDF-Datei direkt zum Download angeboten. Natürlich ist es spannender, wenn ihr die PDF-Datei auch mit dynamische Daten aus eurer Datenbank füllt.

Du hast Fragen zum Spring Framework, zu Java oder zu iText? Du möchtest gerne einen Beitrag zu einem komplett anderen Thema? Dann lass es mich in den Kommentare wissen. 😉

Java Spring Framework 4: PDF Erstellung mit iText
Markiert in:                

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.