MongoDB - जावा
इस अध्याय में, हम सीखेंगे कि MongoDB CLIENT कैसे सेट किया जाए।
इंस्टालेशन
इससे पहले कि आप अपने जावा कार्यक्रमों में MongoDB का उपयोग शुरू करें, आपको यह सुनिश्चित करने की आवश्यकता है कि आपके पास मशीन पर MongoDB CLIENT और Java सेट अप हैं। आप अपने मशीन पर जावा इंस्टॉलेशन के लिए जावा ट्यूटोरियल की जांच कर सकते हैं। अब, हम देखते हैं कि MongoDB CLIENT कैसे सेट करें।
आपको जार डाउनलोड करने की आवश्यकता है mongodb-driver-3.11.2.jar and its dependency mongodb-driver-core-3.11.2.jar.। इन जार फ़ाइलों की नवीनतम रिलीज़ को डाउनलोड करना सुनिश्चित करें।
आपको अपने वर्गपथ में डाउनलोड की गई जार फ़ाइलों को शामिल करना होगा।
डेटाबेस से कनेक्ट करें
डेटाबेस को जोड़ने के लिए, आपको डेटाबेस का नाम निर्दिष्ट करना होगा, यदि डेटाबेस मौजूद नहीं है तो MongoDB इसे स्वचालित रूप से बनाता है।
डेटाबेस से जुड़ने के लिए कोड स्निपेट निम्नलिखित है -
import com.mongodb.client.MongoDatabase;
import com.mongodb.MongoClient;
import com.mongodb.MongoCredential;
public class ConnectToDB {
public static void main( String args[] ) {
// Creating a Mongo client
MongoClient mongo = new MongoClient( "localhost" , 27017 );
// Creating Credentials
MongoCredential credential;
credential = MongoCredential.createCredential("sampleUser", "myDb",
"password".toCharArray());
System.out.println("Connected to the database successfully");
// Accessing the database
MongoDatabase database = mongo.getDatabase("myDb");
System.out.println("Credentials ::"+ credential);
}
}
अब, ऊपर दिए गए प्रोग्राम को हमारे डेटाबेस myDb बनाने के लिए संकलित करें और चलाएं जैसा कि नीचे दिखाया गया है।
$javac ConnectToDB.java
$java ConnectToDB
निष्पादित करने पर, उपरोक्त कार्यक्रम आपको निम्न आउटपुट देता है।
Connected to the database successfully
Credentials ::MongoCredential{
mechanism = null,
userName = 'sampleUser',
source = 'myDb',
password = <hidden>,
mechanismProperties = {}
}
एक संग्रह बनाएँ
एक संग्रह बनाने के लिए, createCollection() उसकि विधि com.mongodb.client.MongoDatabase वर्ग का उपयोग किया जाता है।
निम्नलिखित एक संग्रह बनाने के लिए कोड स्निपेट है -
import com.mongodb.client.MongoDatabase;
import com.mongodb.MongoClient;
import com.mongodb.MongoCredential;
public class CreatingCollection {
public static void main( String args[] ) {
// Creating a Mongo client
MongoClient mongo = new MongoClient( "localhost" , 27017 );
// Creating Credentials
MongoCredential credential;
credential = MongoCredential.createCredential("sampleUser", "myDb",
"password".toCharArray());
System.out.println("Connected to the database successfully");
//Accessing the database
MongoDatabase database = mongo.getDatabase("myDb");
//Creating a collection
database.createCollection("sampleCollection");
System.out.println("Collection created successfully");
}
}
संकलन करने पर, उपरोक्त कार्यक्रम आपको निम्नलिखित परिणाम देता है -
Connected to the database successfully
Collection created successfully
एक संग्रह प्राप्त करना / चयन करना
डेटाबेस से एक संग्रह प्राप्त करने / चयन करने के लिए, getCollection() उसकि विधि com.mongodb.client.MongoDatabase वर्ग का उपयोग किया जाता है।
निम्नलिखित एक संग्रह प्राप्त करने / चयन करने का कार्यक्रम है -
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;
import org.bson.Document;
import com.mongodb.MongoClient;
import com.mongodb.MongoCredential;
public class selectingCollection {
public static void main( String args[] ) {
// Creating a Mongo client
MongoClient mongo = new MongoClient( "localhost" , 27017 );
// Creating Credentials
MongoCredential credential;
credential = MongoCredential.createCredential("sampleUser", "myDb",
"password".toCharArray());
System.out.println("Connected to the database successfully");
// Accessing the database
MongoDatabase database = mongo.getDatabase("myDb");
// Creating a collection
System.out.println("Collection created successfully");
// Retrieving a collection
MongoCollection<Document> collection = database.getCollection("myCollection");
System.out.println("Collection myCollection selected successfully");
}
}
संकलन करने पर, उपरोक्त कार्यक्रम आपको निम्नलिखित परिणाम देता है -
Connected to the database successfully
Collection created successfully
Collection myCollection selected successfully
एक दस्तावेज़ डालें
MongoDB में एक दस्तावेज़ सम्मिलित करने के लिए, insert() उसकि विधि com.mongodb.client.MongoCollection वर्ग का उपयोग किया जाता है।
दस्तावेज़ डालने के लिए कोड स्निपेट निम्नलिखित है -
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;
import org.bson.Document;
import com.mongodb.MongoClient;
public class InsertingDocument {
public static void main( String args[] ) {
// Creating a Mongo client
MongoClient mongo = new MongoClient( "localhost" , 27017 );
// Accessing the database
MongoDatabase database = mongo.getDatabase("myDb");
// Creating a collection
database.createCollection("sampleCollection");
System.out.println("Collection created successfully");
// Retrieving a collection
MongoCollection<Document> collection = database.getCollection("sampleCollection");
System.out.println("Collection sampleCollection selected successfully");
Document document = new Document("title", "MongoDB")
.append("description", "database")
.append("likes", 100)
.append("url", "http://www.tutorialspoint.com/mongodb/")
.append("by", "tutorials point");
//Inserting document into the collection
collection.insertOne(document);
System.out.println("Document inserted successfully");
}
संकलन करने पर, उपरोक्त कार्यक्रम आपको निम्नलिखित परिणाम देता है -
Connected to the database successfully
Collection sampleCollection selected successfully
Document inserted successfully
सभी दस्तावेज़ों को पुनः प्राप्त करें
संग्रह से सभी दस्तावेजों का चयन करने के लिए, find() उसकि विधि com.mongodb.client.MongoCollectionवर्ग का उपयोग किया जाता है। यह विधि एक कर्सर लौटाती है, इसलिए आपको इस कर्सर को पुनरावृत्त करना होगा।
निम्नलिखित सभी दस्तावेजों का चयन करने का कार्यक्रम है -
import com.mongodb.client.FindIterable;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import org.bson.Document;
import com.mongodb.MongoClient;
import com.mongodb.MongoCredential;
public class RetrievingAllDocuments {
public static void main( String args[] ) {
// Creating a Mongo client
MongoClient mongo = new MongoClient( "localhost" , 27017 );
// Creating Credentials
MongoCredential credential;
credential = MongoCredential.createCredential("sampleUser", "myDb", "password".toCharArray());
System.out.println("Connected to the database successfully");
// Accessing the database
MongoDatabase database = mongo.getDatabase("myDb");
// Retrieving a collection
MongoCollection<Document> collection = database.getCollection("sampleCollection");
System.out.println("Collection sampleCollection selected successfully");
Document document1 = new Document("title", "MongoDB")
.append("description", "database")
.append("likes", 100)
.append("url", "http://www.tutorialspoint.com/mongodb/")
.append("by", "tutorials point");
Document document2 = new Document("title", "RethinkDB")
.append("description", "database")
.append("likes", 200)
.append("url", "http://www.tutorialspoint.com/rethinkdb/")
.append("by", "tutorials point");
List<Document> list = new ArrayList<Document>();
list.add(document1);
list.add(document2);
collection.insertMany(list);
// Getting the iterable object
FindIterable<Document> iterDoc = collection.find();
int i = 1;
// Getting the iterator
Iterator it = iterDoc.iterator();
while (it.hasNext()) {
System.out.println(it.next());
i++;
}
}
}
संकलन करने पर, उपरोक्त कार्यक्रम आपको निम्नलिखित परिणाम देता है -
Connected to the database successfully
Collection sampleCollection selected successfully
Document{{_id=5dce4e9ff68a9c2449e197b2, title=MongoDB, description=database, likes=100, url=http://www.tutorialspoint.com/mongodb/, by=tutorials point}}
Document{{_id=5dce4e9ff68a9c2449e197b3, title=RethinkDB, description=database, likes=200, url=http://www.tutorialspoint.com/rethinkdb/, by=tutorials point}}
दस्तावेज़ अद्यतन करें
संग्रह से एक दस्तावेज़ को अद्यतन करने के लिए, updateOne() उसकि विधि com.mongodb.client.MongoCollection वर्ग का उपयोग किया जाता है।
निम्नलिखित पहला दस्तावेज चुनने का कार्यक्रम है -
import com.mongodb.client.FindIterable;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;
import com.mongodb.client.model.Filters;
import com.mongodb.client.model.Updates;
import java.util.Iterator;
import org.bson.Document;
import com.mongodb.MongoClient;
import com.mongodb.MongoCredential;
public class UpdatingDocuments {
public static void main( String args[] ) {
// Creating a Mongo client
MongoClient mongo = new MongoClient( "localhost" , 27017 );
// Creating Credentials
MongoCredential credential;
credential = MongoCredential.createCredential("sampleUser", "myDb",
"password".toCharArray());
System.out.println("Connected to the database successfully");
// Accessing the database
MongoDatabase database = mongo.getDatabase("myDb");
// Retrieving a collection
MongoCollection<Document> collection = database.getCollection("sampleCollection");
System.out.println("Collection myCollection selected successfully");
collection.updateOne(Filters.eq("title", 1), Updates.set("likes", 150));
System.out.println("Document update successfully...");
// Retrieving the documents after updation
// Getting the iterable object
FindIterable<Document> iterDoc = collection.find();
int i = 1;
// Getting the iterator
Iterator it = iterDoc.iterator();
while (it.hasNext()) {
System.out.println(it.next());
i++;
}
}
}
संकलन करने पर, उपरोक्त कार्यक्रम आपको निम्नलिखित परिणाम देता है -
Connected to the database successfully
Collection myCollection selected successfully
Document update successfully...
Document{{_id=5dce4e9ff68a9c2449e197b2, title=MongoDB, description=database, likes=100, url=http://www.tutorialspoint.com/mongodb/, by=tutorials point}}
Document{{_id=5dce4e9ff68a9c2449e197b3, title=RethinkDB, description=database, likes=200, url=http://www.tutorialspoint.com/rethinkdb/, by=tutorials point}}
एक दस्तावेज़ हटाएँ
संग्रह से एक दस्तावेज़ को हटाने के लिए, आपको लिंक का उपयोग करने की आवश्यकता है deleteOne() की विधि com.mongodb.client.MongoCollection कक्षा।
दस्तावेज़ को हटाने का कार्यक्रम निम्नलिखित है -
import com.mongodb.client.FindIterable;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;
import com.mongodb.client.model.Filters;
import java.util.Iterator;
import org.bson.Document;
import com.mongodb.MongoClient;
import com.mongodb.MongoCredential;
public class DeletingDocuments {
public static void main( String args[] ) {
// Creating a Mongo client
MongoClient mongo = new MongoClient( "localhost" , 27017 );
// Creating Credentials
MongoCredential credential;
credential = MongoCredential.createCredential("sampleUser", "myDb",
"password".toCharArray());
System.out.println("Connected to the database successfully");
// Accessing the database
MongoDatabase database = mongo.getDatabase("myDb");
// Retrieving a collection
MongoCollection<Document> collection = database.getCollection("sampleCollection");
System.out.println("Collection sampleCollection selected successfully");
// Deleting the documents
collection.deleteOne(Filters.eq("title", "MongoDB"));
System.out.println("Document deleted successfully...");
// Retrieving the documents after updation
// Getting the iterable object
FindIterable<Document> iterDoc = collection.find();
int i = 1;
// Getting the iterator
Iterator it = iterDoc.iterator();
while (it.hasNext()) {
System.out.println(it.next());
i++;
}
}
}
संकलन करने पर, उपरोक्त कार्यक्रम आपको निम्नलिखित परिणाम देता है -
Connected to the database successfully
Collection sampleCollection selected successfully
Document deleted successfully...
Document{{_id=5dce4e9ff68a9c2449e197b3, title=RethinkDB, description=database, likes=200, url=http://www.tutorialspoint.com/rethinkdb/, by=tutorials point}}
एक संग्रह छोड़ने
एक डेटाबेस से एक संग्रह को छोड़ने के लिए, आपको डेटाबेस का उपयोग करने की आवश्यकता है drop() की विधि com.mongodb.client.MongoCollection कक्षा।
निम्नलिखित एक संग्रह को हटाने का कार्यक्रम है -
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;
import org.bson.Document;
import com.mongodb.MongoClient;
import com.mongodb.MongoCredential;
public class DropingCollection {
public static void main( String args[] ) {
// Creating a Mongo client
MongoClient mongo = new MongoClient( "localhost" , 27017 );
// Creating Credentials
MongoCredential credential;
credential = MongoCredential.createCredential("sampleUser", "myDb",
"password".toCharArray());
System.out.println("Connected to the database successfully");
// Accessing the database
MongoDatabase database = mongo.getDatabase("myDb");
// Creating a collection
System.out.println("Collections created successfully");
// Retrieving a collection
MongoCollection<Document> collection = database.getCollection("sampleCollection");
// Dropping a Collection
collection.drop();
System.out.println("Collection dropped successfully");
}
}
संकलन करने पर, उपरोक्त कार्यक्रम आपको निम्नलिखित परिणाम देता है -
Connected to the database successfully
Collection sampleCollection selected successfully
Collection dropped successfully
सभी संग्रहों को सूचीबद्ध करना
एक डेटाबेस में सभी संग्रह को सूचीबद्ध करने के लिए, आपको उपयोग करने की आवश्यकता है listCollectionNames() की विधि com.mongodb.client.MongoDatabase कक्षा।
डेटाबेस के सभी संग्रहों को सूचीबद्ध करने का कार्यक्रम निम्नलिखित है -
import com.mongodb.client.MongoDatabase;
import com.mongodb.MongoClient;
import com.mongodb.MongoCredential;
public class ListOfCollection {
public static void main( String args[] ) {
// Creating a Mongo client
MongoClient mongo = new MongoClient( "localhost" , 27017 );
// Creating Credentials
MongoCredential credential;
credential = MongoCredential.createCredential("sampleUser", "myDb",
"password".toCharArray());
System.out.println("Connected to the database successfully");
// Accessing the database
MongoDatabase database = mongo.getDatabase("myDb");
System.out.println("Collection created successfully");
for (String name : database.listCollectionNames()) {
System.out.println(name);
}
}
}
संकलन करने पर, उपरोक्त कार्यक्रम आपको निम्नलिखित परिणाम देता है -
Connected to the database successfully
Collection created successfully
myCollection
myCollection1
myCollection5
शेष MongoDB विधियाँ save(), limit(), skip(), sort() आदि उसी तरह से काम करते हैं जैसा कि बाद के ट्यूटोरियल में बताया गया है।