Java BeanUtils - Consulta ou filtragem de coleções
Descrição
As coleções de beans podem ser filtradas nas coleções comuns usando a interface Predicate e também fornece valor verdadeiro ou falso na avaliação de um objeto de entrada. Existe um predicado chamado BeanPropertyValueEqualsPredicate que avaliará o valor da propriedade definida em relação ao valor fornecido.
Sintaxe
public BeanPropertyValueEqualsPredicate(String propertyName, Object propertyValue)
A sintaxe acima possui dois parâmetros, que decidem qual propriedade será avaliada e qual deve ser seu valor esperado. Cria umPredicatepara avaliar o objeto de destino e retorna verdadeiro se o valor especificado por propertyName for igual ao valor especificado por propertyValue ; caso contrário, retorna falso.
Os nomes das propriedades são definidos por org.apache.commons.beanutils.PropertyUtils e podem ser simples, indexados, aninhados ou mapeados.
Por exemplo, você pode filtrar uma coleção de beans em que a propriedade myCar é falsa:
// create the closure
BeanPropertyValueEqualsPredicate predicate = new BeanPropertyValueEqualsPredicate( "myCar", Boolean.FALSE );
// filter the collection
CollectionUtils.filter( myCollection, predicate );
O código acima filtra a coleção 'myCollection' e retorna o valor booleano para a propriedade myCar do objeto.