Galera,
Estou usando SpringData, e através dele eu posso criar queries na interface.
Como vcs já devem saber… Então fica algo assim uma query simples:
@Query("select p from Pessoa p where p.nome like ?1")
public List<Pessoa> pegarPessoasComNomeIgualA(String nome);
Muito simples né?
Mas agora eu tenho um desafio maior…
Pessoa possui uma Lista de:
PessoaDocumento
Onde PessoaDocumento é um many to many com atributos. Tipo:
Pessoa p
Documento c
String valorDoDocumento
E eu preciso buscar todas as pessoas onde tem: Documento tipo X valor do documento tipo Y.
Imagino que seja algo do tipo
@Query("Select p from Pessoa p inner join PessoaDocumento pd on p.id = pd.pessoa.id AND pd.documento.valor = ?1 AND pd.documento.tipo = ?2")
public List<Pessoa> buscarPessoasDocumento(String valor, String tipoDocumento);
Deve estar errado, mas deve algo por aí (podem corrigir se quizerem)…
Agora o problema é que eu tenho
UMA LIST de Valor e uma LIST de tipoDocumento
e preciso fazer uma query semelhante a que fizemos aí em cima.
Isto é possível?
Obrigado
