31. Oktober 2012 | 2 min lesezeit

DataGrid Extensions 1.0.0

Mit SQL gibt es eine mächtige Abfragesprache für Datenbestände und das Ergebnis kann direkt mittels WHERE-Klauseln gefiltert werden. Wie kann das Ergebnis allerdings gefiltert werden, wenn die Werte, nach denen wir filtern wollen, erst noch aufwendig berechnet werden müssen oder sogar nur über einen einfachen externen Web Service abgefragt werden können?

Im ersten Fall könnte eine mögliche Lösung daraus bestehen komplizierte Abfragen mittels JOIN-Operationen zu konstruieren und auf die von der Datenbank unterstützen Rechenoperationen zurückzugreifen. Und im zweiten Fall sind wir sogar gezwungen das Filtern der gelieferten Liste von Objekten in-memory vorzunehmen. Für das in-memory Filtern können wir, sofern wir mittels JSF die Daten ausgeben wollen, z.B. auf die Funktionalität von der Primefaces Datatable zurückgreifen. Bei näherer Betrachtung sind die Filter-Funktionen dieser Komponente allerdings sehr eingeschränkt. An diesen Punkten setzt des Open Source Projekt DataGrid Extensions (DGE) an und ermöglicht das generische Filtern von in-memory Daten.

Was kann DGE?

Schaut euch unsere Demo an: Pet Demo

Bei einem DataGrid handelt es sich aus UserInterface-Sicht meist um eine Tabelle oder Liste. Technisch gesehen ist damit aber nahezu alles gemeint, was java.util.Collection implementiert. Die momentane Hauptfunktionalität von DGE ist das Filtern von Daten nach beliebigen Attributen vom Typ BigDecimal, Date, String/Enum und Collection<string>.</string>

In guter open knowledge-Manier ist DGE natürlich ein Maven-Projekt basierend auf dem neusten J2EE Stack, somit ist das Einbinden in das eigene Projekt ein Kinderspiel.

… und so funktioniert’s

Pet.java

PetBean.java

Den kompletten Source Code findet ihr im dge-pet01-sample im DGE Repository.

What’s next?

Wir werden euch im open knowledge Blog regelmäßig über neue Features des Open Source Projektes informieren. Im nächsten Release der DGE steht euch der Filter über Composite Components zur Verfügung. Dies wird die Verwendung von DGE im eigenen Projekt vereinfachen.

Weitere geplante Features, z.B. Grouping und Sorting, sowie den kompletten Source Code gibt’s auf GitHub.


Keine Kommentare

Kontakt

OPEN KNOWLEDGE GmbH

Standort Oldenburg:
Poststraße 1, 26122 Oldenburg

Standort Essen:
II. Hagen 7, 45127 Essen