'सत्र वस्तु से अलग'
अलग मानदंड दो स्थितियों में इस्तेमाल किया जा सकता है:/क्वेरी को निष्पादित प्रस्तुत करने के दौरान
केवल सत्र की आवश्यकता है: कोई सत्र वस्तु के साथ
बिल्डिंग मापदंड क्वेरी क्वेरी बनाने के दौरान डेटाबेस को क्वेरी नहीं।
पूर्व:
DetachedCriteria detachedCriteria = DetachedCriteria.forClass(Department.class);
detachedCriteria.add(Restrictions.eq("DEPTID", 1));
ProjectionList projectionList = Projections.projectionList();
projectionList.add(Projections.property("DEPTID"));
detachedCriteria.setProjection(projectionList);
//Add more
.............................
ऊपर कोड आप इस तरह के एक मापदंड क्वेरी के निर्माण के लिए सत्र वस्तु होने की कोई आवश्यकता मिल रहा है में? बिलकुल नहीं।
कई बार के लिए समान मानदंड क्वेरी बनाना:
सत्र ऑब्जेक्ट के बावजूद इसे एक बार बनाएं, और जब भी आप चाहें इस्तेमाल किया जा सके।
अंत में जब सत्र वस्तु उपलब्ध है, ऊपर क्वेरी सत्र के साथ इस प्रकार का उपयोग करें:
detachedCriteria.getExecutableCriteria(session).list();
http://docs.jboss.org/hibernate/core/3.3/reference/en/html /querycriteria.html#querycriteria-detachedqueries – Reddy