के लिए कोई इकाई नहीं मिली इस प्रश्न को पोस्ट करने से पहले, मैंने पहले से ही this देखा, लेकिन मैं जो भी ढूंढ रहा था उसे प्राप्त नहीं कर सका।javax.persistence.NoResultException: क्वेरी
मुझे पता है कि मैंने जो प्रश्न लिखा है, उसके लिए केवल एक पंक्ति या कोई भी मौजूद नहीं हो सकता है। तो, मेरे पास getResultList()
का उपयोग करने का कोई कारण नहीं है।
यहाँ मेरी कोड है:
String hql="from DrawUnusedBalance where unusedBalanceDate= :today";
Query query=em.createQuery(hql);
query.setParameter("today",new LocalDate());
DrawUnusedBalance drawUnusedBalance=
(DrawUnusedBalance)query.getSingleResult();// we can have only a
// single datum per day
//`System.out.println(drawUnusedBalance.toString());`
समस्या है, अगर वहाँ कोई पंक्ति है, यह एक अपवाद फेंकता है, और यदि नहीं यह ठीक काम करता है। मुझे समस्या पता है लेकिन मैं भी सबसे अच्छा समाधान ढूंढ रहा हूं।
मैं क्या चाहता था, अगर डीबी में कोई पंक्ति नहीं है, तो मैं एक शून्य वस्तु (अपवाद प्राप्त करने के बजाय) प्राप्त करना चाहता था, इसलिए यदि मैं शून्य नहीं हूं, तो मैं एक नया डेटा डालूंगा, मैं बस अपडेट करना चाहता हूं यह।
इसे संभालने का एक तरीका है, जो मुझे विश्वास है कि ऐसा करने का सही तरीका नहीं है। यह है: मेरे पास एक कोशिश-पकड़ ब्लॉक होगा और यदि यह अपवाद फेंकता है तो मैं कैच ब्लॉक पर डीबी में नया डेटा डालने के लिए लिख सकता हूं। लेकिन मेरा मानना है कि एक बेहतर तरीका होगा।
धन्यवाद मनुपके ... लेकिन मुझे अभी भी कुछ कोड लिखना है जो एक वस्तु बना रहा है और एक डीबी करता है .. में पकड़ो ब्लॉक .... और मैंने सोचा कि पकड़ने वाले ब्लॉक से डेटा जारी रखने का एक अच्छा तरीका नहीं होगा ... हालांकि आपकी प्रतिक्रिया के लिए tnx। – WowBow
मुझे लगता है कि ** चेक अपवाद ** को पकड़ने और वैकल्पिक पथ लेने में कुछ भी गलत नहीं है। यही कारण है कि जेपीए आपको यह विकल्प दे रहा है कि आप इसे कैसे संभालना चाहते हैं। असल में जिस विधि को आप ढूंढ रहे हैं वह [हाइबरनेट] (http://docs.jboss.org/hibernate/core/3.2/api/org/hibernate/Query.html#uniqueResult()) में उपलब्ध है जो जेपीए के साथ उपलब्ध नहीं है । – ManuPK
@ user1017111 मुझे ** पकड़ ** के अंदर कोड लिखने में आपकी समस्या मिली। मैंने कोड को पठनीय बनाने के लिए थोड़ा जवाब दिया है। – ManuPK