Java BeanUtils - Abfragen oder Filtern von Sammlungen
Beschreibung
Die Sammlungen von Beans können mithilfe der Schnittstelle Prädikat in den Commons-Sammlungen gefiltert werden und liefern bei der Auswertung eines Eingabeobjekts entweder einen wahren oder einen falschen Wert. Es gibt ein Prädikat namens BeanPropertyValueEqualsPredicate, das den festgelegten Eigenschaftswert anhand des angegebenen Werts bewertet.
Syntax
public BeanPropertyValueEqualsPredicate(String propertyName, Object propertyValue)
Die obige Syntax enthält zwei Parameter, die entscheiden, welche Eigenschaft ausgewertet werden soll und welcher Wert erwartet werden soll. Es schafft einePredicatezur Auswertung des Zielobjekts und liefert TRUE , wenn der Wert von spezifizierten property auf den Wert von der angegebenen gleich property ; Andernfalls wird false zurückgegeben.
Die Eigenschaftsnamen werden von org.apache.commons.beanutils.PropertyUtils definiert und können einfach, indiziert, verschachtelt oder zugeordnet sein.
Sie können beispielsweise eine Sammlung von Beans filtern, bei denen die myCar-Eigenschaft false ist:
// create the closure
BeanPropertyValueEqualsPredicate predicate = new BeanPropertyValueEqualsPredicate( "myCar", Boolean.FALSE );
// filter the collection
CollectionUtils.filter( myCollection, predicate );
Der obige Code filtert die 'myCollection'-Auflistung und gibt den booleschen Wert für die myCar-Eigenschaft des Objekts zurück.