J'ai la méthode suivante:Hibernate requête paramétrées
public List<Book> searchGroups(String title, String subtitle, String author) {
Session session = HibernateUtil.getCurrentSession();
Query query = session.createSQLQuery("SELECT * FROM book GROUP BY title, subtitle, author;").addEntity(Book.class);
return query.list();
}
Je voudrais inclure le titre, sous-titre et auteur en tant que paramètres de recherche, mais seulement quand ils ne sont pas nuls. Comment puis je faire ça? Par exemple, si le sous-titre et l'auteur sont null, je voudrais seulement chercher par auteur.
Je sais critères mais je n'ai besoin que de résultats distincts. Par exemple j'ai trois livres: deux ont le même titre, sous-titre, auteur et le troisième a le même titre et sous-titre mais un auteur différent. J'ai besoin que les deux premiers livres n'apparaissent que comme une seule entrée. –
Ensuite, vous ne pouvez pas retourner une 'Liste', car un livre a un ID qui le rend différent de tous les autres livres. Ajoutez une projection distincte et trois projections de propriété à votre requête. EDIT à venir. –