Junior — Middle
Как да реализираме връзка един към много в база данни или обектно-ориентирана модел?
sobes.tech AI
Отговор от AI
Връзката от тип "един към много" в база данни се реализира чрез външен ключ в таблицата "много", който сочи към първичния ключ на таблицата "един".
В обектно-ориентиран модел на Java това обикновено се реализира по следния начин:
public class Parent {
private Long id;
private List<Child> children = new ArrayList<>();
// гетъри и сетъри
}
public class Child {
private Long id;
private Parent parent;
// гетъри и сетъри
}
Ако се използва JPA/Hibernate, връзката може да бъде описана с анотации:
@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.