आम तौर पर, कई से कई संबंधों को लागू करने के लिए आपको दो अन्य तालिकाओं से कुंजियों को मैप करने के लिए कुछ मध्य तालिका का उपयोग करने की आवश्यकता होती है।
आपके मामले में, आपको t_students_friends
. कहना होगा निम्न जैसे दो स्तंभों वाली तालिका:
t_students_friends
छात्र_पीके | दोस्त_पीके
आपकी इकाई कक्षाओं में आपको विद्यार्थियों और/या मित्रों के लिए सूचियों की आवश्यकता हो सकती है। ध्यान दें कि @ManyToMany
एक @JoinTable
. की भी आवश्यकता होती है काम करने के लिए एनोटेशन। अगर आप किसी छात्र के दोस्तों तक पहुंचना चाहते हैं, तो अपने Student
. में जोड़ें कक्षा:
@ManyToMany
@JoinTable(
name="t_students_friends",
[email protected](name="student_pk", referencedColumnName="id"),
[email protected](name="friend_pk", referencedColumnName="id"))
private List<Friend> friends;
आपको Friend
. को भी संशोधित करना चाहिए वर्ग इस प्रकार है। जोड़ें
@ManyToMany(mappedBy="friends")
private List<Student> students;
और सरल @Id int id
. का उपयोग करें क्षेत्र जैसा कि आप छात्रों में करते हैं। फ्रेंड्सपीके क्लास की कोई जरूरत नहीं है।
अधिक जानकारी के लिए आप यहां पढ़ सकते हैं। , उदाहरण के लिए।