तो मैं कल इस प्रश्न पूछा, लेकिन गोल पोस्ट के माध्यम से बदल दिया है और सवाल अलग है:हाइबरनेट/जेपीए अनेक संबंध बनाने के लिए कई एक में शामिल होने की मेज और एक समग्र कुंजी, अद्वितीय बाधा मुद्दा
Hibernate/JPA Collection of Elements with Many to Many relationship?
मैं जानना चाहता हूं कि क्या ऐसी संस्थाएं बनाना संभव है जो मेरे आवश्यक रिश्ते को मॉडल करेंगे ताकि जब मैं अपना आवेदन फायर कर दूं तो हाइबरनेट मेरी स्कीमा तैयार करेगी।
संबंध मैं चाहता हूँ इस तरह दिखता है:
बात यह है कि जुड़ें तालिका वास्तव में पंक्तियों है कि किसी भी तत्व से लिंक नहीं करते समाहित कर सकता है। संरचना "प्रकार" और "मूल्य" जोड़ी के आधार पर तत्वों को वर्गीकृत करने का प्रतिनिधित्व करती है और इस विशेष एप्लिकेशन के बाहर सिस्टम में प्रवेश की जाती है।
मैं जो करना चाहता हूं वह मैपिंग के माध्यम से श्रेणियों की एक सूची रखने के लिए मेरी एलिमेंट हाइबरनेट एंटिटी सेट कर सकता है, ताकि मैं वास्तव में देख सकूं कि मेरे तत्व किस श्रेणी से संबंधित हैं और इसलिए हाइबरनेट तालिका बनाता है मुझे।
यहाँ मैं अब तक क्या मिल गया है:
@ManyToMany(fetch = FetchType.EAGER)
@JoinTable(name = "ELEMENT_ELEMENTCATOGORY", joinColumns = {
@JoinColumn(name = "type", referencedColumnName = "type"),
@JoinColumn(name = "value", referencedColumnName = "value") })
@Column(name = "category")
public List<ElementCategory> getCategories() {
return categories;
}
यह वास्तव में कैसे मैं उन्हें चाहते हैं जो मैं चाहता के अधिकांश, यह के रूप में ऊपर मेरी टेबल बनाता है, करता है: इस तरह मेरी तत्व इकाई कक्षा में इस मानचित्रण एक बात को रोकें, एलिमेंट टेबल में (टाइप, वैल्यू) जोड़ी पर एक अनोखा प्रतिबंध जोड़ा गया है। मुझे यह नहीं चाहिए क्योंकि कई तत्वों में एक ही प्रकार और मूल्य जोड़ी हो सकती है, मुझे अनोखी बाधा को शुरू करने से रोकने में सक्षम होना चाहिए, लेकिन यह पता नहीं लगा सकता कि वर्तमान मैपिंग के साथ, क्या मैं यह कर सकता हूं? क्या मैं कई लोगों के साथ कई संबंधों को याद कर रहा हूं?
मुझे अभी भी लगता है कि आपको अपनी व्यस्त तालिका में ElementCategory की आईडी शामिल करने के लिए एक व्यस्त joinColumn की आवश्यकता है। – bvanvelsen
क्या यह और अधिक तार्किक लगता है कि प्रकार और मूल्य एक इकाई है? इसलिए इस प्रकार की आईडी, मान इकाई संयुक्त – bvanvelsen
के एक जॉइनकॉलम है, आईडी इस तथ्य में निहित है कि मेरे पास किसी भी सेट के साथ एलिमेंट श्रेणियों का एक सेट है। जैसा कि मैंने कहा था कि टेबल सही तरीके से स्थापित किए जा रहे हैं और इसमें शामिल तालिका में "श्रेणी" और ElementCategory तालिका में "आईडी" के बीच का लिंक शामिल है। क्या आपको लगता है कि उलटा जुड़ाव एलिमेंट टेबल से अनन्य बाधा को हटा देगा? मैं इसे आजमाऊंगा। – Link19