Table of Contents
Příklady tutoriálů MongoDB Java CRUD
Úvod
MongoDB je populární databázový systém NoSQL s otevřeným zdrojovým kódem, který se používá pro ukládání a správu dat ve formátu JSON a BSON. Java je široce používaný programovací jazyk, který umožňuje vývojářům vytvářet robustní a škálovatelné aplikace. Integrace MongoDB s Javou umožňuje vývojářům využívat sílu obou těchto technologií pro vývoj komplexních datových řešení.
CRUD Operace
CRUD (Create, Read, Update, Delete) jsou základní operace, které se používají pro interakci s databázemi. V MongoDB se tyto operace provádějí pomocí Java driveru MongoDB, který poskytuje rozhraní pro přístup k databázi a provádění operací CRUD.
Vytvoření (Create)
Pro vytvoření nového dokumentu do sbírky MongoDB se nejprve vytvoří dokument Document a poté se vloží do sbírky pomocí metody insertOne()
.
java
import com.mongodb.client.MongoClient;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;
import org.bson.Document;
public class CreateDocument {
public static void main(String[] args) {
// Připojení k databázi
MongoClient mongoClient = MongoClients.create("mongodb://localhost:27017");
MongoDatabase database = mongoClient.getDatabase("test");
MongoCollection<Document> collection = database.getCollection("person");
// Vytvoření dokumentu
Document document = new Document()
.append("name", "John Doe")
.append("age", 30);
// Vložení dokumentu do sbírky
collection.insertOne(document);
// Ukončení připojení
mongoClient.close();
}
}
Čtení (Read)
Pro načtení dokumentu ze sbírky MongoDB se použije metoda find()
. Tato metoda vrací kurzor, který obsahuje nalezené dokumenty.
java
import com.mongodb.client.MongoClient;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoCursor;
import com.mongodb.client.MongoDatabase;
import org.bson.Document;
public class ReadDocument {
public static void main(String[] args) {
// Připojení k databázi
MongoClient mongoClient = MongoClients.create("mongodb://localhost:27017");
MongoDatabase database = mongoClient.getDatabase("test");
MongoCollection<Document> collection = database.getCollection("person");
// Načtení dokumentu podle ID
Document document = collection.find(eq("_id", new ObjectId("5ec35e9373894ac2305ba193"))).first();
// Načtení všech dokumentů
MongoCursor<Document> cursor = collection.find().iterator();
while (cursor.hasNext()) {
Document doc = cursor.next();
System.out.println(doc.toJson());
}
// Ukončení připojení
mongoClient.close();
}
}
Aktualizace (Update)
K aktualizaci dokumentu v MongoDB se používá metoda updateOne()
. Tato metoda přijímá filtr pro nalezení dokumentu, který se má aktualizovat, a dokument s aktualizovanými hodnotami.
java
import com.mongodb.client.MongoClient;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;
import org.bson.Document;
public class UpdateDocument {
public static void main(String[] args) {
// Připojení k databázi
MongoClient mongoClient = MongoClients.create("mongodb://localhost:27017");
MongoDatabase database = mongoClient.getDatabase("test");
MongoCollection<Document> collection = database.getCollection("person");
// Aktualizace dokumentu podle ID
Document filter = eq("_id", new ObjectId("5ec35e9373894ac2305ba193"));
Document update = new Document("$set", new Document("age", 31));
collection.updateOne(filter, update);
// Ukončení připojení
mongoClient.close();
}
}
Smazání (Delete)
Ke smazání dokumentu z MongoDB se používá metoda deleteOne()
. Tato metoda přijímá filtr pro nalezení dokumentu, který se má smazat.
java
import com.mongodb.client.MongoClient;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;
import org.bson.Document;
public class DeleteDocument {
public static void main(String[] args) {
// Připojení k databázi
MongoClient mongoClient = MongoClients.create("mongodb://localhost:27017");
MongoDatabase database = mongoClient.getDatabase("test");
MongoCollection<Document> collection = database.getCollection("person");
// Smazání dokumentu podle ID
Document filter = eq("_id", new ObjectId("5ec35e9373894ac2305ba193"));
collection.deleteOne(filter);
// Ukončení připojení
mongoClient.close();
}
}
Závěr
MongoDB Java CRUD je výkonný a flexibilní nástroj pro správu dat v aplikacích Java. Java driver MongoDB poskytuje pohodlné rozhraní pro provádění operací CRUD a interakci s databází. Vývojáři mohou využít těchto operací k vytvoření robustních a efektivních aplikací, které využívají výhody databáze MongoDB.
Časté dotazy
1. Jak se připojit k databázi MongoDB pomocí Java?
java
import com.mongodb.MongoClient;
import com.mongodb.client.MongoDatabase;
public class ConnectToMongoDB {
public static void main(String[] args) {
// Připojení k databázi
MongoClient mongoClient = new MongoClient("localhost", 27017);
MongoDatabase database = mongoClient.getDatabase("test");
}
}
2. Jak vytvořit kolekci v MongoDB pomocí Java?
java
import com.mongodb.client.MongoClient;
import com.mongodb.client.MongoDatabase;
public class CreateCollection {
public static void main(String[] args) {
// Připojení k databázi
MongoClient mongoClient = new MongoClient("localhost", 27017);
MongoDatabase database = mongoClient.getDatabase("test");
// Vytvoření kolekce
database.createCollection("person");
}
}
3. Jak vytvořit index v MongoDB pomocí Java?
java
import com.mongodb.client.MongoClient;
import com.mongodb.client.MongoDatabase;
import com.mongodb.client.MongoCollection;
import org.bson.Document;
public class CreateIndex {
public static void main(String[] args) {
// Připojení k databázi
MongoClient mongoClient = new MongoClient("localhost", 27017);
MongoDatabase database = mongoClient.getDatabase("test");
MongoCollection<Document> collection = database.getCollection("person");
// Vytvoření indexu
collection.createIndex(new Document("name", 1));
}
}
4. Jak provést filtrovaný dotaz v MongoDB pomocí Java?
java
import com.mongodb.client.MongoClient;
import com.mongodb.client.MongoDatabase;
import com.mongodb.client.MongoCollection;
import org.bson.Document;
public class FindDocuments {
public static void main(String[] args) {
// Připojení k databázi
MongoClient mongoClient = new MongoClient("localhost", 27017);
MongoDatabase database = mongoClient.getDatabase("test");
MongoCollection<Document> collection = database.getCollection("person");
// Filtrovaný dotaz
Document filter = new Document("age", new Document("$gt", 30));
collection.find(filter).forEach(System.out::println);
}
}
5. Jak provést agregaci v MongoDB pomocí Java?
`java
import com.mongodb.client.MongoClient;
import com.mongodb.client.MongoDatabase;
import com.mongodb.client.MongoCollection;
import org.bson.Document;
public class AggregateDocuments {
public static void main(String[] args) {
// Připojení k databázi
MongoClient mongoClient = new MongoClient(„localhost“, 27017);
MongoDatabase database = mongoClient.getDatabase(„test“);
MongoCollection