Bonjour a tous,
J'ai fait beaucoup "d'experiences" et j'ai fait un peu de recherche ....
J'essaie de faire une requete en utilisant les criteria comme par exemple :
Criteria crit = sess.createCriteria(Cat.class);
Et ce afin de poser des critères dessus
crit.add( Expression.like("name", "Fritz%") )
Puis de charger les objets Cat mais uniquement les id, donc sous la forme de Proxy.
1°) C'est a dire de ne pas charger les autres attributs de la classe Cat
donc pas de
2°) Et ne pas charger les sous objets de la classe Cat
Avec une requete HQL je pourrais, mais justement je voudrais le faire en Criteria.
Je n'ai pas trouver d'exemple alors j'ai imaginer une technique que je vais essayer d'expliquer rapidement :
Je créer un objet CatProxy contenant un id et un attribut cat de type Cat
Je map cette classe sur la meme table : CAT, avec l'attribut Cat en proxy
Puis je fait ma requete comme ceci:
1 2 3
|
Criteria critProxy = sess.createCriteria(CatProxy.class);
Criteria crit = critProxy.createCriteria("cat"); |
Puis je continue a poser mes criteres de la classe Cat sur l'objet crit.
Mais malheureusement lors du
J'obtient bien des objets CatProxy, sauf que l'attribut cat est charger full.
Donc ça ne marche pas.
Existe-t-il un techinique pour faire cela ?
Merci d'avance
Partager