Junior — Middle
Hoe implementeer je een een-op-veel relatie in een database of objectgeoriënteerd model?
sobes.tech AI
Antwoord van AI
De relatie van het type "een op velen" in een database wordt geïmplementeerd met behulp van een buitenlandse sleutel in de tabel "veel" die verwijst naar de primaire sleutel van de tabel "een".
In het objectgeoriënteerde model in Java wordt dit meestal als volgt geïmplementeerd:
public class Parent {
private Long id;
private List<Child> children = new ArrayList<>();
// getters en setters
}
public class Child {
private Long id;
private Parent parent;
// getters en setters
}
Als JPA/Hibernate wordt gebruikt, kan de relatie worden beschreven met annotaties:
@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;
}
Op deze manier kan een Parent-object meerdere Child-objecten hebben die ermee verbonden zijn.