how to select documents with in range using $gt and $lt in springdata mongodb? -
त्रुटि: com.mongodb.BasicDBObject की सीमाओं के कारण, आप एक दूसरे 'stop_number' अभिव्यक्ति को निर्दिष्ट नहीं जोड़ सकते हैं 'stop_number: {"$ lt": "5358e8d55d911a8b8d9ed4401"}' मानदंड में पहले से ही 'stop_number: {"$ gt": 1}'।।
और मेरा जावा प्रोग्राम है
query4.addCriteria (मानदंड। जहां ("stop_number") gt ( ("Stop_id")। और ("bus_id")। (Bus_id));
यहाँ एक समाधान है जिसे मैं आपसे प्रस्तावित करता हूं।
1) आपको क्रिटीरिया की एक सूची बनाना चाहिए:
सूची & lt; मानदंड & gt; Criterias = नया ArrayList & lt; & gt; (); criterias.add (Criteria.where ( "stop_number") जीटी (current_stop_number)।); criterias.add (। Criteria.where ( "stop_number") lt (stop_id +1)); 2) तो, आप अपने मानदंड को "$ और" ऑपरेटर द्वारा एकजुट करने के लिए इस तरह से मानदंडों की सूची से एक मानदंड बना सकते हैं:
मानदंड मानदंड = नया मानदंड ()। औरऑपरेटर (मानदंड। टूएरे (नया मानदंड [मानदंड। ()))); 3) अंतिम बात, एक क्वेरी प्राप्त करने के लिए:
क्वेरी क्वेरी = नई क्वेरी (मापदंड); 4) एक मंगोटेम्पलेट के साथ निष्पादित करें
सूची & lt; ClassName & gt; दस्तावेज = मंगोटेम्पलेट.फिंड (क्वेरी, क्लासनाम.क्लैस);
Comments
Post a Comment