Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Hibernate. Поиск по полю присоеденной таблицы / 2 сообщений из 2, страница 1 из 1
25.05.2012, 02:26:12
    #37810793
tepka
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Hibernate. Поиск по полю присоеденной таблицы
Коллеги,
Суть проблемки в следующем:
Делаю выборку по таблице, все ок, а если по полю присоединённой таблицы говорит нет такого поля.

Немного наглядности (придумал прямо тут с балды, могут быть ошибочки):
Предположим у нас две сущности. Фрукты т.е. FruitEntry.class и Магазины т.е. ShopEntry.class. Хочу найти все все магазины "Пятёрочка" продающие "Помидоры".

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
Entity
@Table(name = "FRUIT")
public class FruitEntry {
    @Id
    @Column(name = "id")
    private short id;

    @JoinColumn(name = "shop_id", referencedColumnName = "id")
    @OneToMany()
    private ShopEntry shop;

    @Basic
    @Column(name = "fruitname")
    private String fruitname;
    ...setters and getters 
}

Entity
@Table(name = "SHOP")
public class ShopEntry{
    @Id
    @Column(name = "id")
    private short id;   

    @Basic
    @Column(name = "shopname")
    private String shopname;
    ...setters and getters
}




Хочу сделать нечто типа такого:

Код: java
1.
List<FruitEntry> shopTomatoList = sessionFactory.getCurrentSession().createCriteria(FruitEntry.class).add(Restrictions.eq("fruitname","Помидор")).add(Restrictions.eq("shop.shopname","Пятёрочка")).list();
...
Рейтинг: 0 / 0
25.05.2012, 03:16:13
    #37810801
tepka
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Hibernate. Поиск по полю присоеденной таблицы
tepka,

Догадался. Всем спасибо)
Делается примерно так:

Criteria fruitCrit = sessionFactory.getCurrentSession().createCriteria(FruitEntry.class).add(Restrictions.eq("fruitname","Помидор"));
Criteria shopCrit = fruitCrit.createCriteria("shop").add(Restrictions.eq("shopname","Пятёрочка"))
List<FruitEntry> shopTomatoList = fruitCrit.list();
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Hibernate. Поиск по полю присоеденной таблицы / 2 сообщений из 2, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]