मेरे पास एक डेटाबेस है जो समग्र कुंजी का उपयोग कर रहा है। क्या वसंत-डेटा-जेडीबीसी का उपयोग करना संभव है? मैंने मील का पत्थर संस्करण 1.1M2 की कोशिश की जहां मैंने अपनी इकाई को निम्न तरीके से मैप किया:

class History {

   @ID
   @Embedded
   private CompositeHistoryID  id;
}

फिर अपने भंडार वर्ग में, मैंने जोड़ा

HistoryRepository extends Repository<History,CompositeHistoryID  >{
   History  findByhId(CompositeHistoryID  id)
}

मैंने एसक्यूएल का पता लगाया, और यह काम नहीं किया। एम्बेडेड भाग ने काम किया, लेकिन जहां क्लॉज सही नहीं था। यह नियमित समग्र कुंजी संरचना होने के बजाय एकल पैरामीटर धारक का उपयोग कर रहा था जहां तत्व 1 = उपकुंजी 1 और तत्व 2 = उपकुंजी 2 और इसी तरह ...

मेरे दो प्रश्न हैं। क्या समग्र आईडी काम करने का कोई तरीका है?

दूसरा प्रश्न है, मान लीजिए कि मैं findByID के शीर्ष पर एक कस्टम @Query का उपयोग करता हूं, क्या उसके बाद SAVE विधि काम करेगी यदि? क्या है कोई आईडी नहीं है, क्या होगा अगर मैं सिर्फ एक यादृच्छिक कॉलम चुनूं और कहूं कि आप मेरी आईडी होंगे?

8
Alexandar Petrov 4 अप्रैल 2019, 13:39

1 उत्तर

सबसे बढ़िया उत्तर

नहीं @Embedded आईडी के लिए काम नहीं करता, अभी तक। अभी सभी SQL स्टेटमेंट आईडी कॉलम के लिए एक साधारण मान मान लेते हैं। और मुझे नहीं लगता कि इसके लिए कोई उपाय है।

एक समाधान जो काम कर सकता है वह एक ऐसा दृश्य बनाना है जो समग्र कुंजी को एक फ़ील्ड के रूप में प्रस्तुत करता है और अंतर्निहित तालिका में सही डेटा लिखने के लिए ट्रिगर करता है।

7
Jens Schauder 18 जून 2020, 06:28