2012-11-15 14 views
11

मैं अगर यह इस तरह के प्रश्न बनाने के लिए की तरह हो सकता है सोच रहा था को निर्माता !मानदंड नई वस्तु बनाने वक्तव्य का चयन

+0

मैं जवाब है, व्यक्तिगत रूप से पता नहीं है, लेकिन आप इसे एक शॉट दिया? –

उत्तर

19

हां, मानदंड एपीआई ने जेपीक्यूएल कन्स्ट्रक्टर एक्सप्रेशन के समान निर्माण किया है। Resuls क्लास Criteriabuilder में construct विधि के माध्यम से सेट किया गया है।

आपका JPQL क्वेरी एक मापदंड क्वेरी के रूप में व्यक्त किया जाता है:

CriteriaBuilder cb... 
CriteriaQuery<EmpMenu> q = cb.createQuery(EmpMenu.class); 
    Root<Project> c = q.from(Project.class); 
    q.select(cb.construct(EmpMenu.class, 
     c.get("name"), c.get("department").get("name"))); 
+3

अच्छा, यह वही है जो मैं चाहता था! लेकिन अब मेरे पास एक और सवाल है। मैं प्रश्न बनाने के लिए स्प्रिंग डेटा और विशिष्टता का उपयोग करता हूं। आपके उदाहरण से मैं देखता हूं कि मुझे ** q.select ** को कॉल करना है, लेकिन विशिष्टता में चयन कथन स्वचालित रूप से कहा जाता है (बीसीएस आप केवल पूर्वानुमान को वापस करते हैं)। क्या मुझे विशिष्टता इंटरफ़ेस का उपयोग करके ऐसा करने का मौका है? या मुझे अपना खुद का भंडार बनाना है, EntityManage पर कॉल करें और क्वेरी बनाएं .... – user1827052

संबंधित मुद्दे