सभी सूची प्राप्त किए बिना, नामांकित के साथ गिनने के लिए कैसे करें (यह मुझे लगता है कि प्रदर्शन में वृद्धि होगी)। यह नामित क्वेरी काम करता है कि नहीं:जेपीए गिनती NamedQuery
@NamedQuery(name = "Charakteristika.findAllCount", query = "SELECT COUNT(c) FROM Charakteristika c")
इस निष्पादित:
System.out.println("a");
System.out.println(em.createNamedQuery("Charakteristika.findAllCount", Integer.class).getSingleResult().intValue());
System.out.println("b");
आउटपुट:
a
हालांकि इस क्वेरी काम करता है:
@NamedQuery(name = "Charakteristika.findAll", query = "SELECT c FROM Charakteristika c")
निष्पादित यह:
System.out.println("a");
System.out.println(em.createNamedQuery("Charakteristika.findAll", Charakteristika.class).getResultList().size());
System.out.println("b");
आउटपुट:
a
11111
b
@JBNizet प्रश्न समान हैं, निष्पादन अलग है। –
मुझे बहुत खेद है, समस्या अभी भी वही है, बस गलत वर्तनी दूसरी क्वेरी। – Minutis
@JBNizet दूसरा निष्पादन परिणाम प्रकार को 'Charakteristika.class' के रूप में निर्दिष्ट करता है; मैं अनुमान लगा रहा हूं कि चीजों को फेंक रहा है, प्रत्येक 'एन' पंक्तियों के लिए गिनती लौटा रहा है। –