Pessoal, to com um problema pra fazer uma pesquisa com criteria
tenho a classe Montadora, que possui uma lista de carros
@OneToMany(cascade = CascadeType.ALL)
private List<Carros> listaDeCarros;
@ManyToMany(mappedBy = "listaDeCarros")
@NotFound(action=NotFoundAction.IGNORE)
private java.util.List<Pecas> listaDePecas;
.
.
.
@ManyToOne(optional = true)
private Montadora montadora;
@ManyToMany(cascade = { CascadeType.MERGE})
private java.util.List<Carros> listaDeCarros;
Por exemplo: quero todos os carburadores que caibam em qualquer carro da montadora FORD.
sei que pra pegar os carros da montadora FORD basta:Root<Montadora> mont = criteriaQuery.from(Montadora>.class);
criteriaQuery.select(mont);
criteriaQuery.where(criteriaBuilder.equal(mont.get("nome"), "FORD"));
TypedQuery<Montadora> query = entityManager.createQuery(criteriaQuery);
return query.getSingleResult().getListaDeCarros;