मैं वसंत डेटा जेपीए के लिए नया हूं और समझने की कोशिश कर रहा हूं कि इसे QueryDSL के साथ सबसे अच्छा कैसे उपयोग किया जाए। QueryDSL के बिना, मैं बस @Query एनोटेशन के साथ अपने स्प्रिंगडाटा इंटरफ़ेस में कोई प्रश्न बनाने में सक्षम हूं।स्प्रिंग डेटा जेपीए और क्वेरीडीएसएल
QueryDSL का उपयोग करके एक ही अनुभव रखने के लिए, जो मैं देख सकता हूं, मुझे या तो अपना खुद का कस्टम रिपोजिटरी कार्यान्वयन बनाना होगा और मेरा रेपो इंटरफ़ेस मेरा कस्टम कार्यान्वयन इंटरफ़ेस बढ़ाएगा या मेरी सभी क्वेरीरीएल क्वेरी को एक सेवा परत पर रखेगा जो मेरे रेपो लपेटता है।
पहले मामले में, मैं अपने कस्टम रेपो में किसी भी एसडी स्वत: जेनरेटेड विधियों (उदा: findAll (QueryDSL predicate)) का उपयोग करने की क्षमता खो देता हूं क्योंकि मेरे पास वास्तविक रेपो ऑब्जेक्ट तक पहुंच नहीं है, और दूसरा मामला मैं रेपो परत की बजाय सेवा परत पर क्वेरी तर्क डाल रहा हूं।
न तो समाधान मेरे लिए विशेष रूप से आकर्षक लगता है। क्या कोई तीसरा तरीका है जो अधिक उपयुक्त है? या क्या मैं गलत समझ रहा हूं कि QueryDSL और स्प्रिंग डेटा का सही तरीके से उपयोग कैसे करें?
धन्यवाद!
एरिक
मामला 'भंडार में भविष्यवाणी के संयोजन को छुपा नहीं रहा है', मेरे लिए यह 'समूह द्वारा' और ... को मेरे प्रश्नों में जोड़ने और उनको निष्पादित करने के बारे में है जो दुर्भाग्य से – azerafati
के पास जाने लगते हैं , 'QueryDslPredicateExecutor'' groupBy' आदि का उपयोग करने की अनुमति नहीं देता है केवल क्वेरी का 'कहां' हिस्सा। यह अक्सर विचार नहीं किया जाता है। लेकिन बेस क्लास के रूप में 'QueryDslRepositorySupport' के साथ कस्टम रिपोजिटरी इत्यादि वास्तव में अच्छा है! – djxak
@azerafati, https://github.com/infobip/infobip-spring-data-jpa-querydsl पर एक नज़र डालें, यह हो सकता है कि आप जो खोज रहे हैं। – lpandzic