Создать список объектов из подвыбора в select с помощью HQL - PullRequest
3 голосов
/ 25 марта 2011

Можно ли создать иерархию объектов с объектами, не являющимися объектами, и отношением 1: n из HQL-запроса?

Примечание. Создание объектов анализа, когда полностью определено пространство имен, отсутствуетпроблема.Единственная проблема - это ассоциация через подвыбор объектов SubAnalysis.

Классы:

public class Analysis
{
  public List<SubAnalysis> relatedAnalysis;
  public Long someSum;

  public Analysis(Long someSum, List<SubAnalysis> relatedAnalysis)
  {
    this.someSum = someSum;
    this.relatedAnalysis= relatedAnalysis;
  }
}
public class SubAnalysis
{
  public String info;

  public SubAnalysis(String info)
  {
    this.info = info;
  }
}

HQL:

  select new Analysis(sum(t.value),
           (select new SubAnalysis(x.info)
              from SomeTable x
             where x.t = t))
    from Table t
   where t.id = :id
group by t

Так что я в основном хочу иметь возможностьдля создания отчета в объектах для сущностей:

Таблица => SomeTable, SomeTable

Как:

Анализ => SubAnalysis, SubAnalysis

Реальноезапрос включает в себя гораздо больше суммирования и объединения.

1 Ответ

0 голосов
/ 25 марта 2011

Создание объекта Analysis должно быть возможным, хотя я не уверен, что вам придется использовать FQCN, поскольку Hibernate должен знать точный класс для использования. Что касается объектов и ассоциаций SubAnalysis, я не уверен, и документация явно не говорит нам (или я просто слепой;)).

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