DClick

Implementando PropertySelector para utilizar como Example no Hibernate


A algum tempo atrás alguém perguntou no GUJ se o Hibernate fazia consultas (utilizando Criteria) excluindo propriedades vazias ( "" ).

Nativamente o Hibernate não dispoem desses recurso, porem utilizando Example podemos implementar PropertySelector para faze-lo exatamente como implementação do Example.excludeZeroes()

Exemplo de PropertySelector

JAVA:
  1. public final class NotNullOrBlankPropertySelector implements PropertySelector {
  2.     public boolean include(Object object, String propertyName, Type type) {
  3.        return object!=null && (
  4.           !(object instanceof String) || !( (String) object ).equals("")
  5.        );
  6.     }
  7. }

Como utilizar

JAVA:
  1. HibernateUtil.getSession()
  2.  .createCriteria(SuaEntidade.class)
  3.  .add( Example.create(suaInstancia).setPropertySelector(new NotNullOrBlankPropertySelector()) )
  4.  .list();

Por Daniel Passos em 29/June/2007 | Comentar | Trackback


No Translations

Adicionar comentário

(requerido)
(requerido, não será publicado)