Junior — Middle
Kako implementirati odnos jedan prema više u bazi podataka ili objektno-orijentisanom modelu?
sobes.tech АИ
Одговор од АИ
Veza tipa "jedan prema više" u bazi podataka implementira se pomoću spoljnog ključa u tabeli "više" koji referiše na primarni ključ tabele "jedan".
U objektno-orijentisanom modelu u Javi, ovo se obično realizuje na sledeći način:
public class Parent {
private Long id;
private List<Child> children = new ArrayList<>();
// getteri i setteri
}
public class Child {
private Long id;
private Parent parent;
// getteri i setteri
}
Ako se koristi JPA/Hibernate, odnos se može opisati anotacijama:
@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;
}
Na ovaj način, objekat Parent može imati više povezanih objekata Child.