JPA query.getResultList()?

Verwende ich JPA 1.0:

Query query;
            query = em.createNamedQuery("getThresholdParameters");
            query.setParameter(1, Integer.parseInt(circleId));

            List<Object[]> resultList = new ArrayList();
            resultList  = query.getResultList();

Hier bekomme ich als Ergebnis List<Object[]>, damit ich den Typ konvertieren, werden alle Parameter der Reihe zu Ihren jeweiligen Typen, was umständlich ist.

In JPA 2.0 gibt es TypedQuery die Rückkehr ein entity-Objekt des Typs eins gibt.

Aber da bin ich mit JPA 1 ich kann es nicht verwenden.

How to get Ergebnis als Entity-Objekt des Typs, die ich will??

EDIT:
ABFRAGE

@Entity
@Table(name="GMA_THRESHOLD_PARAMETERS")
@NamedQuery(

        name = "getThresholdParameters",

        query = "select gmaTh.minNumberOc, gmaTh.minDurationOc, gmaTh.maxNumberIc, gmaTh.maxDurationIc, gmaTh.maxNumberCellId,"
                + "gmaTh.distinctBnumberRatio, gmaTh.minPercentDistinctBnumber from GmaThresholdParameter gmaTh " 
                + "where gmaTh.id.circleId=?1 AND gmaTh.id.tspId=?2 AND gmaTh.id.flag=?3 "
        )
Durch die Definition der richtigen JPQL. Post die benannte Abfrage, die den code verweist. Und PS: die Instanz von ArrayList, die Sie manuell erstellen, werden sofort überschrieben, wenn die Liste, die die Abfrage zurückgibt.
Gepostet hast die Abfrage
Sieht aus wie diese wurde vorher gefragt. stackoverflow.com/questions/6119683/..., Wenn es mir war, würde ich suchen, um ein upgrade auf JPA 2, könnte dies die perfekte Ausrede. Auch verschwenden Sie keine Zeit instanziieren resultList wenn Sie nur gehst, um diese zu überschreiben.
Ich habe nicht das überschreiben, was? Wo sonst soll ich erfassen die resultList?
(Ich geschrieben eine Antwort, um zu versuchen und zeigen Ihnen was wir meinen)

InformationsquelleAutor Siddharth Trikha | 2014-01-03

Schreibe einen Kommentar