Hibernate запрос справки - PullRequest
0 голосов
/ 09 мая 2011

У меня есть класс продукта, который имеет отношение один ко многим с классом ProductInventory. Для конкретного продукта у меня есть около 300 инвентаря.

Если я хочу получить продукт на основе его идентификатора и инвентаря в указанном диапазоне дат, как мне выполнить запрос?

Я могу использовать либо hql, либо критерии ... Но я не уверен, как это реализовать, поскольку я новичок в спящем режиме. Пожалуйста, помогите.

Ответы [ 2 ]

1 голос
/ 09 мая 2011

Пример HQL,

String hql = "FROM Product p WHERE p.id = :id AND p.inventory.date BETWEEN :date1 AND :date2";

Query query = session.createQuery(hql);
query.setParameter("id", id);
query.setParameter("date1", date1);
query.setParameter("date2", date2);     

List<Product> products = query.list();
for(Product product : products) {
    System.out.println(product.getId() + "...");
    List<ProductInventory> inventories = product.getProductInventory();
    for(ProductInventory inventory : inventories) {
        System.out.println(inventory.get...);
    }
}
0 голосов
/ 09 мая 2011

Я рекомендую использовать критерии, а для диапазона дат вы можете использовать

criteria.add(Restrictions.between(column_name, minValue,maxValue)).list();

Для получения дополнительной информации посетите здесь

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