Критерии нетерпеливой коллекции с выборкой, чтобы избежать n + 1 выбора

Допустим, что Предмет и Предложение - это объекты: Предмет имеет много предложений. Они отображаются вHibernate в типичных отношениях родитель / ребенок:

<class name="Item" table="ITEM">
  ...
  <set name="bids" inverse="true">
    <key column="ITEM_ID"/>
    <one-to-many class="Bid"/>
  </set>
</class>

Как я могу избежать выбора n + 1 при попытке получить доступ к ставкам каждого элемента после выполнения этого запроса?

List<Item> items = session.createCriteria(Item.class)
                        .createAlias("bids", "b").
                        .add(Restrictions.gt("b.amount", 100)).
                        .list();

Note Мне нуженeager fetching для ставок, ноwith a further restriction on the collection (b.amount & gt; 100)

Я безуспешно попробовал следующее:

List<Item> items = session.createCriteria(Item.class)
                        .setFetchMode("bids", FetchMode.JOIN).
                        .createAlias("bids", "b").
                        .add(Restrictions.gt("b.amount", 100)).
                        .list();                        

List<Item> items = session.createCriteria(Item.class)
                        .createCriteria("bids")
                        .add(Restrictions.gt("amount", 100)).
                        .list();                        

Ответы на вопрос(4)

Ваш ответ на вопрос