Problem
Du möchtest Excel-Dateien im Wunschformat aus dem Java-Backend erzeugen, ohne Apache POI-Experte werden zu müssen?
Lösung
Mittels der Java-Bibliothek JXLS lassen sich Excel-Dateien mit einem speziellen Markup als Vorlage nutzen, um dann auf vergleichsweise einfache Art Excel-Dateien mit Daten aus dem Backend zu erzeugen.
Beispiel
interface RevenueDetails {
String getCustomerId();
BigDecimal getRevenue();
int getOrderCount();
};
Die Vorlage für das gewünschte Format wird samt JXLS-Markup in Excel erstellt.
final Iterable<RevenueDetails> revenueDetails = getRevenueDetails();
try (InputStream is = JxlsExcelWriter.class.getResourceAsStream("template.xlsx")) {
try (OutputStream os = new FileOutputStream("target/revenue-details.xlsx")) {
final var context = new Context();
context.putVar("entries", revenueDetails);
JxlsHelper.getInstance().processTemplate(is, os, context);
}
}
Weiterführende Aspekte
- JXLS: http://jxls.sourceforge.net/index.html
- Apache POI: https://poi.apache.org/
---
Autor: Jan Wolter / Senior Software Engineer / Standort Leipzig
Toilet Paper #153 als Download: JXLS – Excel-Dateien einfach erzeugen (PDF)
Lust, das nächste ToiletPaper zu schreiben? Jetzt bei jambit bewerben!