Java-Tipps zur Listen-Iteration und zum Vergleichen von Beans

„Reflection“ ist ein leistungsfähiges Tool, mit dem man eine Menge Zeit und Aufwand sparen kann. Eine Möglichkeit ist die Verwendung eines BeanComparators.

BeanComparators sind generische Comparatoren, die jede Java Bean bearbeiten können. Mit einem guten Bean Reflection System als Grundlage können Beans über Bean-Eigenschaften, Arrays, Collections und Maps bearbeitet werden.

Wenn wir eine java.util.List aus Java Beans vom Typ Person haben, wobei Person eine Altersangabe (als Integer), ein Name (als String) und ein Land (als Country-Bean, das wiederum einen Namen als String hat) zugeordnet ist, können wir diese Liste mit einem BeanComparator ganz nach Belieben sortieren.

Hier einige Beispiele:

Man muss also keinen speziellen PersonComparator mit unzähligen Eigenschaftenoptionen schreiben, nach denen man sortieren will. Stattdessen kümmert sich eine einzige BeanComparator-Klasse um alle notwendigen Details.

Die zugrunde liegende Reflection-API ist für all diese Vorgänge verantwortlich. Listing A ist ein Beispiel für einen einfachen BeanComparator, der auf dem Jakarta CommonsBeanUtils-Projekt aufbaut.

Die Behandlung von Ausnahmen (exceptions) ist in diesem Beispiel vereinfacht worden, und es wird angenommen, dass die zu vergleichende Bean-Eigenschaft Comparable mithilfe des ComparableComparator im Jakarta Commons Collections-Projekt implementiert.

Page: 1 2 3

ZDNet.de Redaktion

Recent Posts

Neue iPads: Apple kündigt Event für 7. Mai an

Die Einladung zeigt einen zeichnenden Apple Pencil. Der wiederum deutet auf neue iPads hin. Es…

5 Tagen ago

EU-Parlament stimmt für Recht auf Reparatur

Die Richtlinie erhält 584 Ja-Stimmen und 3 Gegenstimmen. Das „Recht auf Reparatur“ beinhaltet unter bestimmten…

6 Tagen ago

Forscher entwickeln Exploits per GPT-4 aus Sicherheitswarnungen

Die Tests basieren auf tatsächlich existierenden Sicherheitslücken. GPT-4 erreicht eine Erfolgsquote von 87 Prozent. Alle…

6 Tagen ago

HostPress für Agenturen und E-Commerce-Betreiber

Höchste Performance-Standards für Webseiten und ein persönlicher, kundenorientierter Premium Support.

7 Tagen ago

V-NAND: Samsung steigert Bit-Dichte um 50 Prozent

Die neue V-NAND-Generation bietet die derzeit höchste verfügbare Bit-Dichte. Samsung steigert auch die Geschwindigkeit und…

7 Tagen ago

Bericht: Google entwickelt App-Quarantäne für Android

Die Sicherheitsfunktion taucht in einer Beta eines kommenden Android-Updates auf. Die Quarantäne beendet unter anderem…

1 Woche ago