В моей базе данных есть две таблицы: Персона и Язык. Эти две таблицы отображаются в Hibernate в отношениях «многие ко многим», причем каждый человек говорит на нескольких языках.
Теперь я хочу написать метод, который принимает список языков и возвращает список людей, говорящих на ВСЕХ (логических AND) этих языков. Я пытался построить критерии, такие как:
Restrictions.in("languages", languagesList);
но в результате появился список людей, говорящих на ЛЮБОМ (логическом ИЛИ) из этих языков.
Я посмотрел онлайн и обнаружил, что есть некоторые приемы, использующие соединения и НЕ СУЩЕСТВУЮТ, но они больше походили на хаки, поэтому я хотел проверить, есть ли более чистый подход для достижения этого.
Есть предложения? Благодаря.