playframework1‎ > ‎jpa‎ > ‎

JPQLの結果をList<Map>で受け取る

サンプルアプリのYABEのmodels/Tag.java のL27~あたりより抜粋

public static List<Map> getCloud() {
    List<Map> result = Tag.find(
        "select new map(t.name as tag, count(p.id) as pound) from Post p join p.tags as t group by t.name"
    ).fetch();
    return result;
}

受取専用のbeanクラスを用意する方が、おそらくメモリ消費が少なくて済む。(Mapオブジェクトだと管理部分が必要なので)