Junior — Middle
Como implementar uma relação um para muitos numa base de dados ou modelo orientado a objetos?
sobes.tech IA
Resposta da IA
A relação do tipo "um para muitos" numa base de dados é implementada usando uma chave estrangeira na tabela "muitos" que referencia a chave primária da tabela "um".
No modelo orientado a objetos em Java, isto é geralmente implementado assim:
public class Parent {
private Long id;
private List<Child> children = new ArrayList<>();
// getters e setters
}
public class Child {
private Long id;
private Parent parent;
// getters e setters
}
Se estiver a usar JPA/Hibernate, a relação pode ser descrita com anotações:
@Entity
public class Parent {
@Id
private Long id;
@OneToMany(mappedBy = "parent")
private List<Child> children;
}
@Entity
public class Child {
@Id
private Long id;
@ManyToOne
@JoinColumn(name = "parent_id")
private Parent parent;
}
Assim, um objeto Parent pode ter múltiplos objetos Child relacionados.