jpa
एक से कई रिश्ते
खोज…
पैरामीटर
टिप्पणी | उद्देश्य |
---|---|
@TableGenerator | जनरेटर का नाम और तालिका नाम निर्दिष्ट करता है जहां जनरेटर पाया जा सकता है |
@GeneratedValue | पीढ़ी की रणनीति को निर्दिष्ट करता है और जनरेटर के नाम को संदर्भित करता है |
@ManyToOne | कर्मचारी और विभाग के बीच कई संबंधों को निर्दिष्ट करता है |
@OneToMany (mappedBy = "विभाग") | कर्मचारी और विभाग के बीच द्वि-दिशात्मक संबंध बनाता है केवल कर्मचारी इकाई में @ManyToOne एनोटेशन का संदर्भ देकर |
एक से कई रिश्ते
एक से कई मानचित्रण आम तौर पर कई से एक मानचित्रण का एक द्विदिश संबंध है। हम एक ही उदाहरण लेंगे जो हमने कई से एक मैपिंग के लिए लिया था।
Employee.java
@Entity
public class Employee {
@TableGenerator(name = "employee_gen", table = "id_gen", pkColumnName = "gen_name", valueColumnName = "gen_val", allocationSize = 100)
@Id
@GeneratedValue(strategy = GenerationType.TABLE, generator = "employee_gen")
private int idemployee;
private String firstname;
private String lastname;
private String email;
@ManyToOne
@JoinColumn(name = "iddepartment")
private Department department;
// getters and setters
}
Department.java
@Entity
public class Department {
@TableGenerator(table = "id_gen", pkColumnName = "gen_name", valueColumnName = "gen_val", name = "department_gen", allocationSize = 1)
@Id
@GeneratedValue(strategy = GenerationType.TABLE, generator = "department_gen")
private int iddepartment;
private String name;
@OneToMany(mappedBy = "department")
private List<Employee> employees;
// getters and setters
}
यह संबंध डेटाबेस में नीचे के रूप में दर्शाया गया है।
Jpa एक के बारे में कई मानचित्रण याद करने के लिए दो बिंदु हैं:
- एक से कई रिश्ते का मालिक पक्ष होता है। उस तरफ स्तंभ परिभाषित किया गया है।
- कई मैपिंग में से एक प्रतिलोम पक्ष है इसलिए प्रतिचित्रित तत्व को प्रतिलोम पक्ष पर उपयोग किया जाना चाहिए।
पूरा उदाहरण यहां संदर्भित किया जा सकता है
Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow