Junior — Middle
Πώς υλοποιείται μια σχέση ένα προς πολλά σε μια βάση δεδομένων ή μοντέλο προσανατολισμένο σε αντικείμενα;
sobes.tech AI
Απάντηση από AI
Ο τύπος σχέσης "ένας προς πολλούς" σε μια βάση δεδομένων υλοποιείται με τη χρήση ενός εξωτερικού κλειδιού στον πίνακα "πολλοί" που αναφέρεται στο πρωτεύον κλειδί του πίνακα "ένας".
Στο αντικειμενοστραφές μοντέλο στη Java, αυτό υλοποιείται συνήθως ως εξής:
public class Parent {
private Long id;
private List<Child> children = new ArrayList<>();
// getters και setters
}
public class Child {
private Long id;
private Parent parent;
// getters και setters
}
Αν χρησιμοποιείται JPA/Hibernate, η σχέση μπορεί να περιγραφεί με annotations:
@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;
}
Έτσι, ένα αντικείμενο Parent μπορεί να έχει πολλά συσχετισμένα αντικείμενα Child.