Sobes.tech
Junior — Middle

Ինչպե՞ս իրականացնել մեկից շատ հարաբերություն տվյալների բազայում կամ օբյեկտ-կողմնորոշված մոդելում։

sobes.tech AI

Պատասխան AI-ից

Տիպի "մեկից շատ" հարաբերությունը տվյալների բազայում իրականացնում է արտաքին բանալի միջոցով, որը գտնվում է "շատ" աղյուսակում և հղում է "մեկ" աղյուսակի հիմնական բանալին:

Java- ի օբյեկտային մոդելում դա սովորաբար իրականացվում է այսպես՝

public class Parent {
    private Long id;
    private List<Child> children = new ArrayList<>();

    // getter և setter-ներ
}

public class Child {
    private Long id;
    private Parent parent;

    // getter և setter-ներ
}

Եթե օգտագործվում է 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 օբյեկտներ։