rechnen mit anderen Feldern in der group by mit hibernate

Möchte ich zu dem zurückkehren zählen der Zeilen mit einigen anderen Feldern in einer Gruppe mit hibernate, und ich habe nicht ein Feld in meine entity-Klasse, die zählen. ich habe zum Beispiel eine Zahlung entity-Klasse:

class Payment
{
    private Long id;
    private String totalCode;
    private String activityCode;
    private Long amount;

    //other fields and setter/getters
}

sql-Abfrage:

select count(*), sum(p.amount), p.total_code, p.activity_code 
from  tb_payment p
group by p.total_code,p.activity_code

und meine hibernate Kriterien:

Session session = getCurrentSession();
ProjectionList projectionList = Projections.projectionList();        
projectionList.add(Projections.groupProperty("totalCode"))
        .add(Projections.groupProperty("activityCode"))
        .add(Projections.sum("amount"))
        .add(Projections.count("id"));
Criteria criteria  = session.createCriteria(Payment.class);
criteria.setProjection(projectionList);
List<Payment> payments = criteria.list();

Wie gesagt, mein problem ist ich weiß nicht wo/wie kann ich den Zugriff auf den Wert von count (aus Kriterien.Liste())!?

InformationsquelleAutor Jaqen H'ghar | 2014-04-13
Schreibe einen Kommentar