J'essaie d'implémenter un namedQuery (javax.persistence.Query) avec Generics. Cela fonctionne pour des objets uniques:javax.persistence.Query avec des génériques
public <T extends Status> T fStatusByCode(Class<T> type, String code)
{
Query nq = getManager().createNamedQuery("f"+type.newInstance().getClass().getSimpleName());
nq.setParameter("code", code);
T result=(T)nq.getSingleResult();
return result;
}
Malheureusement, cela ne peut pas directement appliquée pour obtenir tous les objets:
public List<T extends UtilsStatus> allStatus(Class<T> type)
{
...
List<T> lResult = (List<T>)q.getResultList();
return lResult;
}
Le étend dans la méthode Liste publique .... semble être terrible mal, mais je ne comprends pas l'image. Comment est la syntaxe pour obtenir un List<T>
?
Merci, Thor
Merci pour cette suggestion, maintenant je suis sur un CriteriaQuery – Thor