используя критерии гибернации для выбора в объекты значения - PullRequest
1 голос
/ 18 октября 2010

Я пытаюсь выяснить, возможно ли выполнить следующий HQL с использованием Hibernate Criteria API:

String hql = "select new InitialCount(substring(name, 1,1), count(id)) from Person group by substring(name, 1,1)";

Где InitialCount - очень простой бин со строкой и длинным конструктором:

public static class InitialCount {
    private final String initial;
    private final long count;

    public InitialCount(String initial, long count) {
        this.initial = initial;
        this.count = count;
    }
}

Возможно ли это?

1 Ответ

4 голосов
/ 18 октября 2010

Попробуйте это:

criteria.setProjection(Projections.projectionList()
        .add(Projections.groupProperty("formulaProp").as("initial"))
        .add(Projections.count("id").as("count"))
            ).setResultTransformer(Transformers.aliasToBean(InitialCount.class)).list();        

где FormulaProp - это свойство лица, отображаемого с формулой "substring (name, 1,1)"

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...