Ограничить связанные объекты, загруженные через Критерии гибернации - PullRequest
0 голосов
/ 06 января 2010

Можно ли ограничить количество связанных сущностей, выбираемых по критериям гибернации? Рассмотрим следующие две сущности:

@Entity
public class History {

  @OneToMany
  private List<Entry> entries

  ...

}

@Entity
public class Entry {

  @ManyToOne
  private History history;
  private DateTime date;

  ...

}

Мне нужно использовать Критерии для выборки всех сущностей Истории, но только для того, чтобы возвращать самую последнюю сущность Записи для каждой сущности Истории. Другими словами, каждое поле записей истории должно содержать только самую последнюю запись для этого объекта истории. Мне нужно сделать что-то вроде заказа и ограничить вход, даже если я опрашиваю (с критериями) по истории.

Возможно ли это, и если да, то как?

1 Ответ

1 голос
/ 11 января 2010

Это можно сделать, позвонив по критериям:

criteria.setResultTransformer(Criteria.ALIAS_TO_ENTITY_MAP)

С помощью этого ResultTransformer будут заполняться только те связанные сущности, которые соответствуют ограничениям.

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