Учебники

Java BeanUtils — запрос или фильтрация коллекций

Коллекции bean-компонентов могут быть отфильтрованы в commons-collection с помощью интерфейса Predicate, а также предоставляют значение true или false при оценке входного объекта. Существует предикат с именем BeanPropertyValueEqualsPredicate, который будет оценивать установленное значение свойства по сравнению с заданным значением.

Синтаксис

public BeanPropertyValueEqualsPredicate(String propertyName, Object propertyValue)

Приведенный выше синтаксис имеет два параметра, которые определяют, какое свойство должно оцениваться и какое должно быть его ожидаемое значение. Он создает предикат для оценки целевого объекта и возвращает значение true, если значение, указанное в propertyName , равно значению, указанному в propertyValue ; в противном случае возвращается false.

Имена свойств определяются org.apache.commons.beanutils.PropertyUtils и могут быть простыми, индексированными, вложенными или отображенными.

Например, вы можете отфильтровать коллекцию бинов, где свойство myCar имеет значение false:

// create the closure
BeanPropertyValueEqualsPredicate predicate = new BeanPropertyValueEqualsPredicate( "myCar", Boolean.FALSE );
	
// filter the collection
CollectionUtils.filter( myCollection, predicate );

Приведенный выше код фильтрует коллекцию ‘myCollection’ и возвращает логическое значение для свойства myCar объекта.