क्या मानदंड API और NamedQuery के बीच निर्णय के लिए कोई ह्युरिस्टिक/सर्वोत्तम अभ्यास/नियम है?जेपीए नामांकित क्वेरीज़ बनाम मानदंड एपीआई?
मेरे विचार अब तक:
नामित प्रश्न आम तौर पर अधिक पठनीय होते हैं। मानदंड प्रश्न अधिक लचीला हैं।
दोनों precompiled हैं। जब तक संभव हो, नामित प्रश्नों का उपयोग करने पर भरोसा करते हैं, फिर मानदंडों में बदलते हैं।
लेकिन शायद मानदंड API का उपयोग कर क्वेरी को "flexify" करने का आग्रह उप-डिज़ाइन डिज़ाइन (यानी चिंताओं को अलग करना) का संकेत है?
धन्यवाद
से मैं सहमत हूं। अच्छा उत्तर! – Robin
मुझे केवल मानदंड का उपयोग करना पसंद है। इकाई के मेटामोडेल के साथ मानदंड एपीआई को संयोजित करें और आप स्ट्रिंग के उपयोग को पूरी तरह से त्याग सकते हैं और एक वास्तविक गीला जावा जावा के लिए मजबूत टाइप कोड का उत्पादन कर सकते हैं! हालांकि, मैंने पाया [यह] (http://milestonenext.blogspot.se/2013/02/jpql-vs-criteria.html) परीक्षण जो वास्तव में दिखाता है कि मानदंड जेपीक्यूएल से भी बदतर है! –
तकनीकी रूप से उस प्रदर्शन परीक्षण ने उत्पन्न मेटामोडेल का उपयोग नहीं किया जो जेपीए मानदंड API के बारे में सबसे अच्छा हिस्सा है। शुरुआत में हाइबरनेट मानदंड से जेपीए में स्विचिंग में मुझे बड़ी कठिनाई थी, लेकिन अब मैं वास्तव में जेपीए पसंद करता हूं। – Yinzara