hibernate filter hibernate-mapping hibernate-annotations

Filtro Hibernate programáticamente



filter hibernate-mapping (1)

Simplemente defina un FilterDef con los parámetros que recibirá la condición del filtro:

@FilterDef(name = "smithFilter", parameters = {@ParamDef(name = "lastName", type = "string")}) @Filter(name="smithFilter", condition="LAST_NAME = :lastName")

Como también usó la palabra "programáticamente", también le conviene saber que puede establecer el parámetro basándose en otras entradas, como esta:

session.enableFilter("smithFilter").setParameter("lastName", "SMITH");

Más detalles en la documentación de Hibernate:

http://docs.jboss.org/hibernate/core/3.6/reference/en-US/html_single/#objectstate-filters

¿Cómo lograr programáticamente el mismo resultado (como lo lograría la siguiente anotación)? ¿O inyectando el valor ''SMITH'' en un archivo de configuración de primavera?

@Filter(name="smithFilter", condition="LAST_NAME = ''SMITH''") public String getLastName() { return this.lastName; }