English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

MongoDBJava

In diesem Kapitel lernen wir, wie wir MongoDB CLIENT einrichten.

Installation

Bevor Sie mit MongoDB in Java-Programmen beginnen, müssen Sie sicherstellen, dass MongoDB CLIENT und Java auf Ihrem Computer eingerichtet sind. Sie können Java gemäß der Java-Tutorial installieren, um Java auf Ihrem Computer zu installieren. Lassen Sie uns nun überprüfen, wie Sie MongoDB CLIENT einrichten.

  • Sie müssen das jar herunterladen mongodb-driver-3.11.2.jar und seine Abhängigkeit mongodb-driver-core-3.11.2.jar.Stellen Sie sicher, dass Sie die neuesten Versionen dieser jar-Dateien herunterladen.

  • Sie müssen die heruntergeladenen jar-Dateien in die Classpath einbinden.

Verbindung zur Datenbank

Um eine Verbindung zur Datenbank herzustellen, müssen Sie den Datenbanknamen angeben. Wenn die Datenbank nicht existiert, wird MongoDB sie automatisch erstellen.

Hier ist ein Code-Abschnitt zur Verbindung mit der Datenbank-

import com.mongodb.client.MongoDatabase; 
import com.mongodb.MongoClient; 
import com.mongodb.MongoCredential;  
public class ConnectToDB { 
   
   public static void main(String args[]) {  
      
      // Erstellen Sie einen MongoDB-Client 
      MongoClient mongo = new MongoClient("localhost", 27017 ); 
   
      // Datenbankzertifikat erstellen 
      MongoCredential credential; 
      credential = MongoCredential.createCredential("sampleUser", "myDb", 
         "password".toCharArray()); 
      System.out.println("ErfolgreichverbundenmitDatenbank");  
      
      // Datenbankzugriff 
      MongoDatabasedatabase=mongo.getDatabase("myDb"); 
      System.out.println("Credentials ::"+ credential);     
   } 
}

Lassen Sie uns nun das obige Programm kompilieren und ausführen, um die Datenbank myDb wie folgt zu erstellen.

$javac ConnectToDB.java $java ConnectToDB

Nach der Ausführung wird das obige Programm Ihnen folgende Ausgabe liefern.

Die Verbindung zur Datenbank wurde erfolgreich hergestellt Credentials :: MongoCredential{
   mechanism = null, 
   userName = 'sampleUser', 
   source = 'myDb', 
   password = <versteckt>, 
   mechanismProperties = {}

Sammlung erstellen

Um eine Sammlung zu erstellen, verwenden Sie die Methode createCollection () der Klasse com.mongodb.client.MongoDatabase.

Hier ist ein Code-Abschnitt zur Erstellung einer Sammlung-

import com.mongodb.client.MongoDatabase; 
import com.mongodb.MongoClient; 
import com.mongodb.MongoCredential;  
public class CreatingCollection { 
   
   public static void main(String args[]) {  
      
      // Erstellen Sie einen MongoDB-Client 
      MongoClient mongo = new MongoClient("localhost", 27017 ); 
     
      // Datenbankzertifikat erstellen 
      MongoCredential credential; 
      credential = MongoCredential.createCredential("sampleUser", "myDb", 
         "password".toCharArray()); 
      System.out.println("ErfolgreichverbundenmitDatenbank");  
      
      //Datenbankzugriff 
      MongoDatabasedatabase=mongo.getDatabase("myDb");  
      
      //Sammlung erstellen 
      database.createCollection("sampleCollection"); 
      System.out.println("ErfolgreicherErstellungvonKollektion"); 
   } 
}

BeiKompilierungbietetIhnenderobigeCodefolgendesErgebnis-

Die Verbindung zur Datenbank wurde erfolgreich hergestellt Die Sammlung wurde erfolgreich erstellt

Abruf/Auswahl der Sammlung

Um aus der Datenbank zu erhalten/Um eine Sammlung aus der Datenbank zu erhalten, müssen Sie die Methode getCollection () der Klasse com.mongodb.client.MongoDatabase verwenden.

Hier ist der Abruf/Programm zum Auswählen einer Sammlung-

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[]) {  
      
      // Erstellen Sie einen MongoDB-Client 
      MongoClient mongo = new MongoClient("localhost", 27017 ); 
     
      // Datenbankzertifikat erstellen 
      MongoCredential credential; 
      credential = MongoCredential.createCredential("sampleUser", "myDb", 
         "password".toCharArray()); 
      System.out.println("ErfolgreichverbundenmitDatenbank");  
      
      // Datenbankzugriff 
      MongoDatabasedatabase=mongo.getDatabase("myDb");  
      
      // Sammlung erstellen
      System.out.println("ErfolgreicherErstellungvonKollektion"); 
      // Sammlung abrufen
      MongoCollection<Document> collection = database.getCollection("myCollection"); 
      System.out.println("Erfolgreich die Sammlung myCollection ausgewählt"); 
   }
}

BeiKompilierungbietetIhnenderobigeCodefolgendesErgebnis-

Die Verbindung zur Datenbank wurde erfolgreich hergestellt Die Sammlung wurde erfolgreich erstellt Die Sammlung myCollection wurde erfolgreich ausgewählt

Einfügen von Dokumenten

Um einen Dokument in MongoDB einzufügen, müssen Sie die insert ()-Methode der Klasse com.MongoDB.client.MongoCollection verwenden.

以下是插入文档的代码片段-

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[]) {
	// Erstellen Sie einen MongoDB-Client
	MongoClient mongo = new MongoClient("localhost", 27017 );
	// Datenbankzugriff
	MongoDatabasedatabase=mongo.getDatabase("myDb");
	// Sammlung erstellen
	database.createCollection("sampleCollection");
	System.out.println("ErfolgreicherErstellungvonKollektion");
	// Sammlung abrufen
	MongoCollection<Document> collection = database.getCollection("sampleCollection");
	System.out.println("Erfolgreich die Sammlung sampleCollection ausgewählt");
	Document document = new Document("title", "MongoDB")
	.append("description", "database")
	.append("likes", 100)
	.append("url", "http://de.oldtoolbag.com/mongodb/")
	.append("by", "oldtoolbag.com");
	//将文档插入集合中
	collection.insertOne(document);
	System.out.println("文档插入成功");
}

BeiKompilierungbietetIhnenderobigeCodefolgendesErgebnis-

已成功连接到数据库 已成功选择集合sampleCollection 文档插入成功

检索所有文档

要从集合中选择所有文档,请使用com.mongodb.client.MongoCollection 的classfind()Methode。此方法返回一个游标,因此您需要迭代此游标。

Hier ist das Programm, um alle Dokumente auszuwählen-

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[]) {
		// Erstellen Sie einen MongoDB-Client
		MongoClient mongo = new MongoClient("localhost", 27017 );
		// Datenbankzertifikat erstellen
		MongoCredential credential;
		credential = MongoCredential.createCredential("sampleUser", "myDb", "password".toCharArray());
		System.out.println("ErfolgreichverbundenmitDatenbank");
		// Datenbankzugriff
		MongoDatabasedatabase=mongo.getDatabase("myDb");
		// Sammlung abrufen
		MongoCollection<Document> collection = database.getCollection("sampleCollection");
		System.out.println("Erfolgreich die Sammlung sampleCollection ausgewählt");
		Document document1 = new Document("title", "MongoDB")
		.append("description", "database")
		.append("likes", 100)
		.append("url", "http://de.oldtoolbag.com/mongodb/")
		.append("by", "oldtoolbag.com");
		Document document2 = new Document("title", "RethinkDB")
		.append("description", "database")
		.append("likes", 200)
		.append("url", "http://de.oldtoolbag.com/rethinkdb/")
		.append("by", "oldtoolbag.com");
		List<Document> list = new ArrayList<Document>();
		list.add(document1);
		list.add(document2);
		collection.insertMany(list);
		// Erhalten Sie das Iterierbare
		FindIterable<Document> iterDoc = collection.find();
		int i = 1;
		// Erhalten Sie den Iterator
		Iterator it = iterDoc.iterator();
		while (it.hasNext()) {
			System.out.println(it.next());
			i++;
		}
	}
}

BeiKompilierungbietetIhnenderobigeCodefolgendesErgebnis-

Erfolgreich mit der Datenbank verbunden Erfolgreich Sammlung sampleCollection{{_id=5dce4e9ff68a9c2449e197b2, title=MongoDB, description=database, likes=100, url=http://de.oldtoolbag.com/mongodb/, by=oldtoolbag.com}}Document{{_id=5dce4e9ff68a9c2449e197b3, title=RethinkDB, description=database, likes=200, url=http://de.oldtoolbag.com/rethinkdb/, by=oldtoolbag.com}}

Aktualisieren Sie das Dokument

Um Dokumente in der Sammlung zu aktualisieren, verwenden SieKlasse com.mongodb.client.MongoCollectionupdateOne()Methode

Hier ist das Programm, um den ersten Dokument auszuwählen-

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[]) {  
      
      // Erstellen Sie einen MongoDB-Client 
      MongoClient mongo = new MongoClient("localhost", 27017 ); 
     
      // Datenbankzertifikat erstellen 
      MongoCredential credential; 
      credential = MongoCredential.createCredential("sampleUser", "myDb", 
         "password".toCharArray()); 
      System.out.println("ErfolgreichverbundenmitDatenbank");  
      
      // Datenbankzugriff 
      MongoDatabasedatabase=mongo.getDatabase("myDb"); 
      // Sammlung abrufen 
      MongoCollection<Document> collection = database.getCollection("sampleCollection");
      System.out.println("Erfolgreich die Sammlung myCollection ausgewählt"); 
      collection.updateOne(Filters.eq("title", 1), Updates.set("likes", 150));       
      System.out.println("Dokument erfolgreich aktualisiert...");  
      
      // Dokument nach dem Update suchen 
      // Erhalten Sie das Iterierbare
      FindIterable<Document> iterDoc = collection.find(); 
      int i = 1; 
      // Erhalten Sie den Iterator 
      Iterator it = iterDoc.iterator(); 
      while (it.hasNext()) {  
         System.out.println(it.next());  
         i++; 
      }     
   }  
}

BeiKompilierungbietetIhnenderobigeCodefolgendesErgebnis-

Verbindung zur Datenbank erfolgreich hergestellt...Erfolgreich die Sammlung myCollection ausgewählt...Dokument erfolgreich aktualisiert...Document{{_id=5dce4e9ff68a9c2449e197b2, title=MongoDB, description=database, likes=100, url=http://de.oldtoolbag.com/mongodb/, by=oldtoolbag.com}}Document{{_id=5dce4e9ff68a9c2449e197b3, title=RethinkDB, description=database, likes=200, url=http://de.oldtoolbag.com/rethinkdb/, by=oldtoolbag.com}}

Dokument löschen

Um ein Dokument aus der Sammlung zu löschen, müssen Sie die Klasse verwendencom.mongodb.client.MongoCollectionvondeleteOne()Methode.

Hier ist das Programm zum Löschen von Dokumenten-

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[]) {  
   
      // Erstellen Sie einen MongoDB-Client 
      MongoClient mongo = new MongoClient("localhost", 27017 );
      
      // Datenbankzertifikat erstellen 
      MongoCredential credential; 
      credential = MongoCredential.createCredential("sampleUser", "myDb", 
         "password".toCharArray()); 
      System.out.println("ErfolgreichverbundenmitDatenbank");  
      
      // Datenbankzugriff 
      MongoDatabasedatabase=mongo.getDatabase("myDb"); 
      // Sammlung abrufen
      MongoCollection<Document> collection = database.getCollection("sampleCollection");
      System.out.println("Erfolgreich die Sammlung sampleCollection ausgewählt"); 
      // Datei löschen 
      collection.deleteOne(Filters.eq("title", "MongoDB")); 
      System.out.println("Dokument erfolgreich gelöscht...");  
      
      // Dokument nach dem Update suchen 
      // Erhalten Sie das Iterierbare 
      FindIterable<Document> iterDoc = collection.find(); 
      int i = 1; 
      // Erhalten Sie den Iterator 
      Iterator it = iterDoc.iterator(); 
      while (it.hasNext()) {  
         System.out.println(it.next());  
         i++; 
      }       
   } 
}

BeiKompilierungbietetIhnenderobigeCodefolgendesErgebnis-

Verbindung zur Datenbank erfolgreich hergestellt...Dokument erfolgreich gelöscht...Document{{_id=5dce4e9ff68a9c2449e197b3, title=RethinkDB, description=database, likes=200, url=http://de.oldtoolbag.com/rethinkdb/, by=oldtoolbag.com}}

Sammlung löschen

Um eine Sammlung aus der Datenbank zu löschen, müssen Sie die Klasse verwendencom.mongodb.client.MongoCollectionvondrop()Methode.

Dies ist ein Programm zum Löschen von Sammlungen-

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[]) {  
      // Erstellen Sie einen MongoDB-Client 
      MongoClient mongo = new MongoClient("localhost", 27017 ); 
      // Datenbankzertifikat erstellen 
      MongoCredential credential; 
      credential = MongoCredential.createCredential("sampleUser", "myDb", 
         "password".toCharArray()); 
      System.out.println("ErfolgreichverbundenmitDatenbank");  
      
      // Datenbankzugriff 
      MongoDatabasedatabase=mongo.getDatabase("myDb");  
      
      // Sammlung erstellen
      System.out.println("ErfolgreicherErstellungvonKollektion"); 
      // Sammlung abrufen
      MongoCollection<Document> collection = database.getCollection("sampleCollection");
      // Sammlung löschen 
      collection.drop(); 
      System.out.println("Die Sammlung wurde erfolgreich gelöscht");
   } 
}

BeiKompilierungbietetIhnenderobigeCodefolgendesErgebnis-

Die Verbindung zur Datenbank Collection sampleCollection wurde erfolgreich hergestellt, successfully selected, die Sammlung wurde erfolgreich gelöscht

Alle Sammlungen auflisten

Um alle Sammlungen der Datenbank aufzulisten, müssen Sie die Klasse verwendenvon com.mongodb.client.MongoDatabaselistCollectionNames()Methode

Dies ist ein Programm, um alle Datenbanken zu listen-

import com.mongodb.client.MongoDatabase; 
import com.mongodb.MongoClient; 
import com.mongodb.MongoCredential;  
public class ListOfCollection { 
   
   public static void main(String args[]) {  
      
      // Erstellen Sie einen MongoDB-Client 
      MongoClient mongo = new MongoClient("localhost", 27017 ); 
      // Datenbankzertifikat erstellen 
      MongoCredential credential; 
      credential = MongoCredential.createCredential("sampleUser", "myDb", 
         "password".toCharArray()); 
      System.out.println("ErfolgreichverbundenmitDatenbank");  
      
      // Datenbankzugriff 
      MongoDatabasedatabase=mongo.getDatabase("myDb"); 
      System.out.println("ErfolgreicherErstellungvonKollektion"); 
      for(Stringname:database.listCollectionNames()){ 
         System.out.println(name); 
      } 
   }
}

BeiKompilierungbietetIhnenderobigeCodefolgendesErgebnis-

ErfolgreichverbundenmitDatenbank ErfolgreicherErstellungvonKollektion myCollection myCollection1 myCollection5

DieArbeitsweisevonMongoDBMethodenwie save ()、 limit ()、 skip ()、 sort ()undweiterenwirdinfolgenderenTutorialserklärt.