У меня проблема с моим настраиваемым запросом, выполненным с помощью критерия запроса, мне нужно сделать предложение In для поля, которое имеет отношение многие ко многим, каков наилучший способ?
здесь есть объект
public class Book {
private int idBook;
//bi-directional many-to-many association to Author
@ManyToMany(fetch = FetchType.LAZY)
@JoinTable(
name="book_author"
, joinColumns={
@JoinColumn(name="idBook")
}
, inverseJoinColumns={
@JoinColumn(name="idAuthor")
}
)
private Set<Author> authors;
вот моя неправильная попытка
if (filterValue.getAuthors() != null) {
In<Integer> authorsInId = cb.in(root.get("authors"));
for (AuthorsPOJO subsystem : filterValue.getAuthors()) {
authorsInId.value(authors.getIdAuthor());
}
predicates.add(authorsInId);
}
спасибо