Hallo,
Eine kleine Ergänzung zu Thema schöneres "Verpacken" des Ganzen.
Man kann eine Hilfsklasse erstellen, die diese "Mechanik" versteckt.
Code:
package test.ek;
public class SumObject {
private Long sumBytes;
private Long sumPackets;
public SumObject(Long sumBytes, Long sumPackets) {
this.sumBytes = sumBytes;
this.sumPackets = sumPackets;
}
public Long getSumBytes() {
return sumBytes;
}
public Long getSumPackets() {
return sumPackets;
}
}
Mit dieser Klasse "bewaffnet", kann man dann schreiben:
Code:
SumObject sums = (SumObject ) session.createQuery(
"select new " + SumObject.class.getName()
+ "(sum(fl.bytes), sum(fl.packets)) from Flow fl").uniqueResult();
Und dann kann man mit den Gettern die Summen auslesen. Finde ich sehr elegant - wenn es auch etwas mehr Schreibarbeit ist. :).
Erik