6
votes

Jpa plusieurs requêtes sélectionnées

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: B (ID_A, ID_C), A (id_a, nom, emplacement) C (ID_C, .... ..) xxx

aussi, est-ce un bon moyen de faire ma requête?


0 commentaires

3 Réponses :


4
votes

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


0 commentaires

6
votes

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());
    }


0 commentaires

0
votes

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 code>, où le contenu du tableau contiendra les valeurs 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();
}


0 commentaires