DBCursor
के माध्यम से पुनरावृत्त किया जाना है। आप DBCursor# का उपयोग कर सकते हैं है नेक्स्ट ()
जैसे आप एक सामान्य Iterator
, और DBCursor#next ()
अगला DBObject
पाने के लिए
. डीबीऑब्जेक्ट
आपको प्राप्त करें
आपके जैसे मान मानचित्र
, कुंजी में पास करके
तो मान लें कि हमारे पास एक संग्रह है तालिका
स्विंगटेस्ट
. में डेटाबेस, निम्नलिखित दस्तावेजों के साथ
{ "_id" :ObjectId("5450700691a43786388fcc8f"), "first" :"Stack", "last" :"Overflow" }{ "_id" :ObjectId("5450704d91a43786388fcc90"), "first" :"पेशाब", "अंतिम" :"स्किललेट" }{ "_id" :ObjectId ("5450705a91a43786388fcc91"), "प्रथम" :"हैलो", "अंतिम" :"विश्व" }{ "_id" :ObjectId ("545070b091a43786388fcc92" ), "प्रथम":"मोंगो", "अंतिम":"डीबी"}
आपने वास्तव में यह निर्दिष्ट नहीं किया है कि आप संग्रह के साथ क्या करना चाहते हैं, तो मान लें कि आप डेटा को JTable
में जोड़ना चाहते हैं , आप कुछ ऐसा कर सकते हैं
MongoClient mongoClient =null;DBCursor कर्सर =नल; try { mongoClient =new MongoClient ("लोकलहोस्ट", 27017); डीबी डीबी =mongoClient.getDB ("स्विंगटेस्ट"); डीबीसीओलेक्शन कॉल =db.getCollection ("टेबल"); कर्सर =Coll.find (); स्ट्रिंग [] कॉलमनाम ={"आईडी", "प्रथम", "अंतिम"}; DefaultTableModel मॉडल =नया DefaultTableModel (कॉलमनाम, 0); जबकि (कर्सर.हैसनेक्स्ट ()) {डीबीओब्जेक्ट ओबीजे =कर्सर.नेक्स्ट (); स्ट्रिंग पहले =(स्ट्रिंग) obj.get ("पहला"); अंतिम स्ट्रिंग =(स्ट्रिंग) obj.get ("अंतिम"); ऑब्जेक्ट आईडी आईडी =(ऑब्जेक्ट आईडी) obj.get ("_id"); model.addRow (नई वस्तु [] {आईडी, प्रथम, अंतिम}); } टेबल.सेटमॉडल (मॉडल); कर्सर। बंद करें (); mongoClient.close();}
जहां प्रत्येक पुनरावृत्ति (दस्तावेज़) के लिए, हमें _id
. मिलता है , पहला
और अंतिम
मान, फिर एक पंक्ति बनाएँ जिसमें हम DefaultTableModel
. जोड़ते हैं . पुनरावृति के अंत में, हम JTable
. के लिए मॉडल सेट करते हैं ।
ये रहा पूरा उदाहरण
आयात करें आयात करें आयात करें org.bson.types.ObjectId;सार्वजनिक वर्ग MongoStackoverflow {निजी स्थिर JTable तालिका; सार्वजनिक स्थैतिक शून्य मुख्य (स्ट्रिंग [] args) {रननेबल रननेबल =नया रननेबल () {सार्वजनिक शून्य रन () {तालिका =नया जेटीबल () {@ ओवरराइड सार्वजनिक आयाम getPreferredScrollableViewportSize () {नया आयाम लौटाएं (300, 150); } }; जेपीनल पैनल =नया जेपीनल (नया बॉर्डरलाउट ()); जेबटन बटन =नया जेबटन ("डेटा दिखाएं"); button.addActionListener (श्रोता); पैनल। जोड़ें (नया JScrollPane (तालिका)); पैनल। जोड़ें (बटन, बॉर्डरलाउट। पेज_END); JOptionPane.showMessageDialog (शून्य, पैनल); } }; SwingUtilities.invokeLater(runnable); } स्टेटिक एक्शन लिस्टनर श्रोता =नया एक्शन लिस्टनर () {@ ओवरराइड पब्लिक वॉयड एक्शनपरफॉर्मेड (एक्शनइवेंट ई) {मोंगो क्लाइंट मोंगो क्लाइंट =नल; DBCursor कर्सर =अशक्त; कोशिश करें {mongoClient =नया MongoClient ("लोकलहोस्ट", 27017); डीबी डीबी =mongoClient.getDB ("स्विंगटेस्ट"); डीबीसीओलेक्शन कॉल =db.getCollection ("टेबल"); कर्सर =Coll.find (); स्ट्रिंग [] कॉलमनाम ={"आईडी", "प्रथम", "अंतिम"}; DefaultTableModel मॉडल =नया DefaultTableModel (कॉलमनाम, 0); जबकि (कर्सर.हैसनेक्स्ट ()) {डीबीओब्जेक्ट ओबीजे =कर्सर.नेक्स्ट (); स्ट्रिंग पहले =(स्ट्रिंग) obj.get ("पहला"); अंतिम स्ट्रिंग =(स्ट्रिंग) obj.get ("अंतिम"); ऑब्जेक्ट आईडी आईडी =(ऑब्जेक्ट आईडी) obj.get ("_id"); model.addRow (नई वस्तु [] {आईडी, प्रथम, अंतिम}); } टेबल.सेटमॉडल (मॉडल); कर्सर। बंद करें (); mongoClient.close (); } पकड़ें (अज्ञातहोस्ट एक्सेप्शन पूर्व) {Logger.getLogger(MongoStackoverflow.class.getName()).log(Level.SEVERE, null, ex); } अंत में { अगर (कर्सर! =शून्य) {कर्सर। बंद (); } अगर (mongoClient !=null) { mongoClient.close(); } } } }; }
संसाधन
- मोंगोडीबी जावा एपीआई आरंभ करने की मार्गदर्शिका
- MongoDB Java API Documentation
- टेबल का इस्तेमाल कैसे करें