Estoy usando Hibernate 3.1.1 y, en particular, estoy usando consultas HQL.¿Cómo realizar una consulta HQL no polimórfica en Hibernate?
De acuerdo con la documentation, consultas de Hibernate son polimórficos:
una consulta como:
from Cat as cat
devuelve instancias no sólo deCat
, sino también de subclases comoDomesticCat
.
¿Cómo puedo consultar instancias de Cat, pero no de ninguna de sus subclases?
Me gustaría poder hacerlo sin tener que mencionar explícitamente cada subclase.
Soy consciente de las siguientes opciones, y no los encuentra satisfactoria:
- filtrado manual de los casos después de la consulta, O:
- Adición manual de una cláusula WHERE en la columna discriminadora.
Tendría sentido para Hibernate permitir al usuario decidir si una consulta debe ser polimórfica o no, pero no puedo encontrar tal opción.
¡Gracias de antemano!
+1 buen descubrimiento ... – skaffman
¡Increíble! En mi caso, necesito que esté en base a consultas, y no por entidad, pero creo que veo una manera de hacerlo, anulando el método 'isExplicitPolymorphism' en mi' EntityPersister'. Ciertamente me dieron un empujón en la dirección correcta. –