Generieren Sie ObjectId in MongoDB mit Java
In jeder Datenbank müssen wir Daten so organisieren, dass wir diese Daten bei Bedarf leicht finden können. Dafür ist es sehr wichtig, eine eindeutige Identität zu schaffen.
In MongoDB gibt es ein integriertes eindeutiges Identitätssystem, das ein Feld namens ObjectId
verwendet.
Dieser Artikel behandelt die ObjectId
und wie wir diese mit einem Java-Programm generieren können. Um das Thema zu vereinfachen, sehen wir ein Beispiel mit einer Erklärung, um das Thema zu vereinfachen.
ObjectId
in MongoDB
Die ObjectId
ist ein Wert, der verwendet wird, um ein Dokument eindeutig durch das Feld _id
in MongoDB zu identifizieren. Das System generiert dieses Feld automatisch, wenn ein Benutzer ein neues Dokument einfügt.
Aber manchmal müssen wir unsere eigene ObjectId
basierend auf unseren Einstellungen erstellen, um jedem Dokument eine eindeutige Identität zu verleihen. Wenn Sie ein Java-Programm erstellen, das Ihre MongoDB-Datenbank manipulieren kann, können Sie sich den nächsten Abschnitt zum Generieren einer ObjectId
mit Java ansehen.
Generieren Sie ObjectId
mit Java
In unserem Beispiel unten zeigen wir, wie wir ein Java-Programm erstellen können, das ein Dokument mit einer manuell erstellten ObjectId
einfügen kann. Dazu können Sie sich das folgende Beispiel ansehen.
import com.mongodb.MongoClient;
import com.mongodb.client.MongoDatabase;
import org.bson.Document;
import org.bson.types.ObjectId;
public class MongoDBJava {
public static void main(String[] args) {
MongoClient mongoClient = new MongoClient("localhost", 27017);
// Selecting the database
MongoDatabase mydb = mongoClient.getDatabase("Mydb");
// Generating an ObjectId before creating the document
ObjectId myid = new ObjectId();
System.out.println("Generated ID: " + myid.get());
// Creating a new document object
Document mydoc = new Document();
// Appending data to the document
mydoc.append("_id", myid);
mydoc.append("Name", "Fred");
mydoc.append("Email", "Fred@gmail.com");
mydoc.append("Year", 2022);
// Inserting the created document into the collection
mydb.getCollection("mydata").insertOne(mydoc);
System.out.println("Inserted document successfully");
}
}
Der Zweck jeder Zeile ist auskommentiert. Im Beispiel haben wir zuerst eine Verbindung mit der MongoDB-Datenbank erstellt.
Anschliessend haben wir die Datenbank mit der Methode getDatabase()
ausgewählt und dann eine neue ObjectId
mit dem Namen myid
generiert.
Dann haben wir ein Document
-Objekt erstellt und mit der append()
-Methode Daten daran angehängt. Zuletzt haben wir das Dokument einfach mit der Methode insertOne()
in unsere Sammlung eingefügt.
Nachdem Sie das obige Beispiel ausgeführt haben, erhalten Sie die folgende Ausgabe.
Generated ID: 6383c46f57dfc2483d89093c
Inserted document successfully
Und Sie werden sehen, dass das folgende Dokument zu Ihrer MongoDB-Sammlung hinzugefügt wurde.
{ _id: ObjectId("6383c46f57dfc2483d89093c"),
Name: 'Fred',
Email: 'Fred@gmail.com',
Year: 2022 }
Denken Sie daran, dass
ObjectId
nur das Hexadezimalformat unterstützt. Überprüfen Sie auch, obwrite collection
ausgewählt ist, bevor Sie das Programm ausführen. Andernfalls wird Ihnen ein Fehler angezeigt.
Einige wichtige Hinweise:
- Das in diesem Artikel geteilte Programm ist in Java geschrieben. Stellen Sie also sicher, dass es in Ihrem System installiert ist.
- Installieren Sie zuerst die MongoDB-JAR-Datei und binden Sie sie in Ihr Java-Programm ein. Um das MongoDB-Jar herunterzuladen, verwenden Sie diesen Link.
Aminul Is an Expert Technical Writer and Full-Stack Developer. He has hands-on working experience on numerous Developer Platforms and SAAS startups. He is highly skilled in numerous Programming languages and Frameworks. He can write professional technical articles like Reviews, Programming, Documentation, SOP, User manual, Whitepaper, etc.
LinkedIn