Question

Je dois affecter le résultat d'un résultat JPQL à un simple objet java class

J'ai quelque chose comme ça

class myObject() {
@id
private Long id;
private String Name;
private String description;
...
//getters and setters
}

Je dois en quelque sorte pour stocker le résultat de cette requête SQL, par exemple

// pourrait être uneTable     SELECT DISTINCT c.table_id, c.name, NULL AS Description DE uneTable

Comment puis-je faire en JPQL puis attribuez-lui le résultat de mon objet?

Était-ce utile?

La solution

La question est extrêmement claire. Voici donc une réponse vague:

EntityManagerFactory emf = Persistence.createEntityManagerFactory("MyPu");
EntityManager em = emf.createEntityManager();    
Query q = em.createQuery("select f.id, f.name from Foo f");
List<Object[]> foos = (List<Object([]>)q.getResultList();

MyObject o = new MyObject();
o.setFoos(foos);

Autres conseils

Je pense que, c'est la réponse!

SELECT NEW entities.PersonWell(c.peopleId, c.name, c.age, c.height, c.weight)
FROM 
  People AS c;

Et il est un constructeur de classe entities.PersonWell:

public PersonWell(Integer peopleId, String name, short age, short height, short weight, short speechspeed) {
        this.peopleId = peopleId;
        this.name = name;
        this.age = age;
        this.height = height;
        this.weight = weight;
        this.speechspeed = speechspeed;
    }

Il y a un code pour une extraction de résultat:

List<PersonWell> resultList = query.getResultList();

Je l'espère, Il vous aidera! :)

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top