Bonjour,
Je reprend une application utilisant Hibernate. Une de mes tâches consiste à réécrire les requêtes en utilisant des paramètres nommées. Cependant, dans la majorité de l'application, les requêtes sont formées ainsi :
La méthode find :String requete = "from TABLE b where b.champs1="+champs1+" and b. champs2="+ champs2+";
List list = find(requete);
Le peu de requête avec des paramètres nommés est de la forme suivante :public java.util.List find(String query) throws HibernateException {
Session s = null;
try {
s = getSession();
return find(query, s);
} finally {
closeSession();
}
}
Ma question est donc : Est-ce plus interessant/performant de laisser les requêtes s'exécuter avec la méthode find ou alors de les transformer en utilisant des paramètres nommés comme dans mon 2ème exemple ?q = this.getSession().createQuery("select new MonObjet (champs1,champs2") from TABLE b where b.champs1=:champs1 and b.champs2=:champs2");
q.setParameter("champs1", champs1);
q.setParameter("champs2", champs2);
list = q.list();
Merci d'avance.
Partager