Prezados, boa noite!!
Estou com um pequeno problema de seleção de registros. Tenho uma tabela “Cliente” e outra “Endereço”, Na tabela “Endereco”, eu tenho um campo chamado “principal” tipo INT. Esse campo se refere se o endereço do cliente e o principal ou não. “1” principal “0” não. Segue das classes.
Cliente
@Entity
@Data
public class Cliente {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private String nome;
@OneToMany
@JoinColumn(name = "id_cliente")
private List<Endereco> enderecos;
}
Endereco
@Entity
@Data
public class Endereco {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private String nome;
private int principal;
private String bairro;
}
No meu repositório de cliente, estou usando o seguinte select
@Query(value = "SELECT c FROM Cliente c JOIN c.enderecos e " +
“WHERE e.principal = 1 AND c.id = 1”)
public List listaTodos();
Fixei o id do cliente, só para ver o resultado.
Quando o json é retornado, ele me vem com todos os endereços do cliente cadastrado, tanto como (1) ou (0), ele não obedece a query. Peço ajuda de todos, aonde estou errando ou se é possível.
Grato.