Есть 2 сущности связанные многие-ко-многим.
Если я хочу получить все данные то
result = session.createCriteria(ProductBrand.class).list();
вываливает мне по 4 дубля(рис. 1) из-за связи многие-ко-многим.
А SQL-запрос
result = session.createSQLQuery("SELECT * FROM wk_cas_product_brand")
.addEntity(ProductBrand.class).list();
работает то нормально(никаких дублей из-за связи нет(рис. 2)), но напрягает, что в нем нужно писать реальное название таблицы.
Можно ли и как настроить ограничения в критерии, дабы связь многие-ко-многим не учитывалась?
рис. 1
рис. 2
Используй Projections.distinct
session.createCriteria(ProductBrand.class).setProjection(
Projections.distinct(Projections.projectionList()
.add(Projections.property("Марка"), "Марка")))
.setResultTransformer(Transformers.aliasToBean(ProductBrand.class))
.list();
Где Марка это имя поля из класса ProductBrand
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Добрый день! Я хочу сделать рекурсивный вызов composite componentТ
Пишу игру по сетиКлиент посылает экземпляр класса ServerCommand серверу