MongoDB ist heute eine sehr beliebte NoSQL-Datenbank. In diesem Artikel wird beschrieben, wie Sie den Java--Treiber von MongoDB verwenden, um MongoDB zu betreiben.
Wenn das Java-Projekt, das MongoDB betreiben muss, ein Maven-Projekt ist, können Sie die folgende Konfiguration hinzufügen die Abhängigkeiten.
<dependencies> <dependency> <groupId>org.mongodb</groupId> <artifactId>mongo-java-driver</artifactId> <version>2.13.2</version> </dependency> </dependencies>
Oder verwenden Sie es, indem Sie das JAR-Paket direkt herunterladen, Download-Adresse: mongo-java-driver-2.13.2.jar.
Ausführliche Informationen zur Einführung des MongoDB-JAR-Pakets finden Sie in der offiziellen Dokumentation.
Sie können MongoClient
verwenden, um eine Verbindung mit MongoDB herzustellen: MongoClient
MongoClient mongoClient = new MongoClient("localhost", 27017); DB db = mongoClient.getDB("mydb");
Thread-MongoClient
sicher ist und denselben in einer Umgebung mit mehreren Prozessen teilen kann. Im Allgemeinen müssen Sie in einer Anwendung nur eine globale MongoClient
-Instanz generieren und diese Instanz dann an anderen Stellen im Programm verwenden. MongoClient
MongoCredential
kann den Authentifizierungsbenutzernamen, das Passwort und die verwendete Datenbank angeben und ein createCredential
<🎜 zurückgeben > ObjektMongoCredential
. Die Deklaration seiner Methode lautet wie folgt:
static MongoCredential createCredential(String userName, String database, char[] password)
MongoCredential credential = MongoCredential.createCredential("user", "mydb", "password".toCharArray();
MongoCredential
generiert das Objekt
der Funktion MongoCredential
Konstruktor MongoClient
. Da der Konstruktor MongoClient
<a href="http://www.php.cn/wiki/1059.html" target="_blank">List<a href="http://www.php.cn/wiki/77.html" target="_blank">< ;
-Typ, daher muss er zuerst in eine Liste erstellt und dann übergeben werden. Ein Beispiel für eine vollständige Authentifizierung lautet wie folgt: <a href="http://www.php.cn/wiki/1059.html" target="_blank">List</a><MongoCredential>
MongoCredential credential = MongoCredential.createCredential("user", "mydb", "password".toCharArray()); ServerAddress serverAddress = new ServerAddress("localhost", 27017); MongoClient mongoClient = new MongoClient(serverAddress, Arrays.asList(credential)); DB db = mongoClient.getDB("mydb");
akzeptiert einen MongoClientURI
-String MongoClientURI
vom Typ String. Das Format dieses Strings ist wie folgt:
mongodb://[username:password@]host1[:port1][,host2[:port2],…[,hostN[:portN]]][/[database][?options]]
Konstruktor, das vollständige Authentifizierungsbeispiel lautet wie folgt: MongoClientURI
MongoClient
String sURI = String.format("mongodb://%s:%s@%s:%d/%s", "user", "password", "localhost", 27017, "mydb"); MongoClientURI uri = new MongoClientURI(sURI); MongoClient mongoClient = new MongoClient(uri); DB db = mongoClient.getDB("mydb");
DBCollection coll = db.getCollection("mycol");
, suchen, aktualisieren usw. 5. Dokument einfügen
BasicDB<div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:java;toolbar:false;">{ “name”: “mongo”, “info”: { “ver”: “3.0” } }</pre><div class="contentsignin">Nach dem Login kopieren</div></div>Object<p>
erstellt werden. BasicDB<a href="http://www.php.cn/wiki/60.html" target="_blank">Object</a>
BasicDBObject doc = new BasicDBObject("name", "mongo").append("info", new BasicDBObject("ver", "3.0")); coll.insert(doc);
finden. Wenn Sie beispielsweise für die obige Mycol-Sammlung den folgenden Befehl ausführen: findOne
DBObject myDoc = coll.findOne(); System.out.println(myDoc);
angeben. findOne
wird verwendet, um Dokumente zu finden, die die Bedingungen erfüllen. Es gibt ein find
-Objekt zurück, das durch Durchlaufen abgerufen werden kann das DBCursor
-Objekt. Alle Dokumente, die den Suchkriterien entsprechen. DBCursor
Zur Veranschaulichung und zum Testen fügen wir zunächst einen Stapel Dokumente in den folgenden Formaten ein
{ “i”: value }
for (int i=0; i < 100; i++) { coll.insert(new BasicDBObject("i", i)); }
Das find
Verwendungsbeispiel lautet wie folgt:
DBCursor cursor = coll.find(); try { while(cursor.hasNext()) { System.out.println(cursor.next()); } } finally { cursor.close(); }
BasicDBObject query = new BasicDBObject("i", 71); DBCursor cursor = coll.find(query); try { while(cursor.hasNext()) { System.out.println(cursor.next()); } } finally { cursor.close(); }
Operator enthalten, zum Beispiel die folgende Mongo-Shell Befehl:
db.coll.find({i: {$gte: 50}});
verwenden, um Suchbedingungen zu generieren, DBObject
// find all where i >= 50 BasicDBObject query = new BasicDBObject("i", new BasicDBObject("$gte", 50)); DBCursor cursor = coll.find(query); try { while (cursor.hasNext()) { System.out.println(cursor.next()); } } finally { cursor.close(); }
BasicDBObject query = new BasicDBObject("i", 70); BasicDBObject up = new BasicDBObject("$set", new BasicDBObject("i", 100)); coll.update(query, up);
与我们常用的更新文档的mongo语句一样,DBCollection
还包含了save
,findAndModify
等更新文档的方法,其使用方法在此不再赘述,可以参考API说明文档即可。
可以通过生成一个DBObject
对象来删除指定的文档,例如:
BasicDBObject query = new BasicDBObject("i", 71); coll.remove(query);
上面的语句删除i为71的文档。
Das obige ist der detaillierte Inhalt vonCode-Sharing des MongoDB-Nutzungshandbuchs in Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!