@Getter
@Setter
@Entity
@Table (name = "cliente")
public class Cliente {
@Id
@GeneratedValue (strategy = GenerationType.IDENTITY)
@Column (name = "id_cliente")
private Long id;
public Cliente() {
}
public Cliente(String nome, int idade, String cpf) {
this.nome = nome;
this.idade = idade;
this.cpf = cpf;
}
private String nome;
private int idade ;
private String cpf;
@OneToMany (mappedBy = "cliente", fetch = FetchType.EAGER)
private List <Pet> pet = new ArrayList<>();
@OneToMany (mappedBy = "cliente", fetch = FetchType.EAGER)
private List<Racao> racao = new ArrayList<>();
// @JoinTable(name = "cliente_racao",
// joinColumns = {@JoinColumn(name = "racao_fk")},
// inverseJoinColumns = {@JoinColumn(name = "cliente_fk")})
@Override
public String toString() {
return "Cliente{" +
"id=" + id +
", nome='" + nome + ''' +
", idade=" + idade +
", cpf='" + cpf + ''' +
", pet=" + pet +
", racao=" + racao +
'}';
}
}
@Entity
@Table (name = "pet")
public class Pet {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
@Column (name = "animaisEstimacao")
private String animal;
private String nome;
private String raca;
private double peso;
public Pet() {
}
public Pet(Cliente cliente) {
this.cliente = cliente;
}
@ManyToOne()
@JoinColumn(name ="cliente_id" , nullable = false)
private Cliente cliente;
}