¿Cómo implico la estrategia de carga diferida solo para una NamedQuery dada?JPA - Force Lazy loading solo para una consulta dada
por ej. Considere el pseudo código de abajo (sólo para explicar el caso) Tengo una entidad
@Entity
class Xyz {
int a;
int b;
@Fetch = EAGER
Set<ABC> listOfItems;
}
En este caso, hemos declarado LISTOFITEMS ser recuperada tempranamente.
Ahora supongamos que tengo un NamedQuery (query="getXyz" , name="select x from Xyz x where a=?")
Para esta consulta, solo necesito que el resultado sea flojo, es decir, no quiero que se recupere listOfItems.
¿Cuáles son las formas en que puedo lograrlos? ps: 1. No quiero cambiar las LISTOFITEMS ser perezoso en la clase de entidad 2. No quiero seleccionar campos específicos en la consulta como name="select a,b from Xyz z where a = ? "
Gracias de antemano por las sugerencias
¿Qué vas a hacer con el resultado de NamedQuery? Puede haber alternativas a lo que estás tratando de lograr. – siebz0r
@ siebz0r solo quiero los campos de primer nivel para mostrar. Mientras que hay otras pantallas donde hay que buscar el conjunto. En mi caso, quiero mejorar el rendimiento no buscándolas ansiosamente. Si tiene alguna sugerencia, por favor, comparta. Gracias ! –
Sugeriría anotar el conjunto como flojo. ¿Por qué no es esto posible? – siebz0r