J'ai une requête comme celle-ci, comment puis-je obtenir mon type d'entité dans la liste? Il renvoie comme un objet, mais quand je mets à mon entité, il ne coule pas.
Mes tables: aussi, est-ce un bon moyen de faire ma requête? p> p> B (ID_A, ID_C), A (id_a, nom, emplacement) C (ID_C, .... ..) code> p>
3 Réponses :
Si vous sélectionnez une valeur multiple, vous obtiendrez une liste de retour.
voir, http://en.wikibooks.org/wiki/java_persistence/Querying#query_results p>
Si vous souhaitez que l'objet, utilisez, P>
select s from A s join s.b b where b.PK.id_C= :idEvent
Premier: Quel type de liste est votre résultat "CompanyList"? De votre requête, vous obtenez une liste de listes et aurait à dire
for (CompanyDTO company : companyList){ System.out.print(company.getName() + ", "); System.out.println(company.getLocation()); }
Cela fonctionne pour moi.
IIRC, vous pouvez faire un SELECT O1, O2, O3 de l'entité O1, ENTTITYB O2, ENTTITYC O3 Où .... CODE>, et le résultat sera une liste
O1, O2, O3 CODE>. P>
public List<Object[]> findXXX(final String param) {
final TypedQuery<Object[]> query = this.em.createNamedQuery(
"package.entity.function", Object[].class);
query.setParameter("variable", variable);
return query.getResultList();
}