Как получить предикат для фильтрации репозитория - PullRequest
0 голосов
/ 20 марта 2020

Я хочу создать предикат для выбора в моем репозитории

class A {

@id
id

@OneToMany(mappedBy = 'A')
Set<B> classesB;
}

class B {

@ManyToOne
@JoinColumn(a_id)
A a;

}

У меня есть таблица A с идентификатором

id | data

1 | asd

2 | df

И у меня есть таблица B

id | data | a_id

1 | item1 | 1

2 | item2 | 1

3 | item2 | 2

Мне нужно выбрать A, где есть a_id в B и где данные равны Списку данных

У меня есть код только для одного типа, но мне нужно получить список не дублированных A и по типам списков вместо одной строки

private static Specification withData(CriteriaBuilder cb, Root<A> root, String type {
  Join<A,B> join = root.join("classesB");
  return cb.equal(join.get('a'),type);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...