MongoDB - Java: A Panduan untuk Pemula
Hai teman, sang pencerdas MongoDB masa depan! Saya sangat senang menjadi panduanmu dalam perjalanan menarik ini ke dunia MongoDB dengan Java. Sebagai seseorang yang telah mengajar ilmu komputer selama bertahun-tahun, saya bisa katakan bahwa kombinasi ini seperti mentega dan jagung - benar-benar lezat! Tentu saja, mari kita lipatkan lengan dan masuk ke dalamnya, ya?
Instalasi
Sebelum kita mulai menciptakan keajaiban MongoDB, kita perlu menyiapkan dapur (err... lingkungan pengembangan) kita. Jangan khawatir, itu lebih mudah daripada mengassembly furniture IKEA!
- Pertama, unduh dan instal MongoDB dari situs web resmi.
- Selanjutnya, kita perlu menambahkan driver Java MongoDB ke proyek kita. Jika Anda menggunakan Maven, tambahkan ini ke file pom.xml Anda:
<dependency>
<groupId>org.mongodb</groupId>
<artifactId>mongodb-driver-sync</artifactId>
<version>4.3.0</version>
</dependency>
Jika Anda tidak menggunakan Maven, jangan khawatir! Anda dapat mengunduh file JAR dan menambahkannya ke classpath secara manual. Itu seperti memilih antara transmisi otomatis dan manual - keduanya akan membawa Anda ke sana!
Menghubungkan ke Database
Sekarang kita siap, mari kita hubungkan ke database kita. Itu seperti membuat panggilan telepon, tapi ke database!
import com.mongodb.client.MongoClients;
import com.mongodb.client.MongoClient;
import com.mongodb.client.MongoDatabase;
public class MongoDBConnection {
public static void main(String[] args) {
// Buat klien MongoDB
MongoClient mongoClient = MongoClients.create("mongodb://localhost:27017");
// Hubungkan ke database
MongoDatabase database = mongoClient.getDatabase("myDatabase");
System.out.println("Berhasil terhubung ke database!");
}
}
Dalam kode ini, kita membuat MongoClient
dan menggunakannya untuk menghubungkan ke database bernama "myDatabase". Jika database itu belum ada, MongoDB akan menciptakanannya untuk kita. Itu sungguh baik, kan?
Membuat Koleksi
Koleksi di MongoDB seperti tabel di database relasional, tapi jauh lebih keren. Mereka adalah skema tak tentu, yang berarti mereka dapat menahan jenis dokumen yang berbeda. Itu seperti pesta di mana semua orang diundang!
import com.mongodb.client.MongoCollection;
import org.bson.Document;
// ... (kode sebelumnya untuk menghubungkan ke database)
MongoCollection<Document> collection = database.getCollection("myCollection");
if (collection == null) {
database.createCollection("myCollection");
System.out.println("Koleksi berhasil diciptakan!");
} else {
System.out.println("Koleksi sudah ada!");
}
Kode ini memeriksa apakah koleksi bernama "myCollection" ada. Jika tidak, ia menciptakan satu. Itu seperti memeriksa apakah Anda memiliki susu di kulkas, dan jika tidak, Anda pergi membeli yang baru!
Memilih Koleksi
Setelah kita memiliki koleksi, kita perlu tahu bagaimana memilih mereka. Itu seperti memilih boneka mana yang akan dimainkan dari kotak boneka Anda!
MongoCollection<Document> collection = database.getCollection("myCollection");
System.out.println("Koleksi yang dipilih: " + collection.getNamespace().getCollectionName());
Kode ini memilih koleksi "myCollection" dan mencetak namanya. Mudah, kan?
Menyisipkan Dokumen
Sekarang, mari kita tambahkan beberapa data ke koleksi kita. Dalam MongoDB, data disimpan dalam dokumen, yang mirip dengan objek JSON.
Document document = new Document("name", "John Doe")
.append("age", 30)
.append("city", "New York");
collection.insertOne(document);
System.out.println("Dokumen berhasil disisipkan!");
Kode ini membuat dokumen dengan nama, umur, dan kota, kemudian menyisipkannya ke dalam koleksi. Itu seperti mengisi formulir dan mengirimkannya!
Mengambil Semua Dokumen
Apa gunanya data jika kita tidak bisa mengambilnya? Mari kitaambil semua dokumen dari koleksi kita.
import com.mongodb.client.FindIterable;
import static com.mongodb.client.model.Filters.*;
FindIterable<Document> documents = collection.find();
for (Document doc : documents) {
System.out.println(doc.toJson());
}
Kode ini mengambil semua dokumen dan mencetak mereka dalam format JSON. Itu seperti meminta semua kue di guci kue!
Memperbarui Dokumen
kadang-kadang, kita perlu memperbarui data kita. Mungkin John pindah ke kota baru?
collection.updateOne(eq("name", "John Doe"), new Document("$set", new Document("city", "San Francisco")));
System.out.println("Dokumen berhasil diperbarui!");
Kode ini memperbarui kota John Doe ke San Francisco. Itu seperti memperbarui alamat Anda saat Anda pindah!
Menghapus Dokumen
Dan kadang-kadang, kita perlu menghapus data. Misalnya, John tidak ingin ada di database kita lagi.
collection.deleteOne(eq("name", "John Doe"));
System.out.println("Dokumen berhasil dihapus!");
Kode ini menghapus dokumen John Doe. Itu seperti menghapus kesalahan di pekerjaan Anda!
Menghapus Koleksi
Jika kita ingin menghapus koleksi keseluruhan, kita dapat menjatuhkannya.
collection.drop();
System.out.println("Koleksi berhasil dijatuhkan!");
Kode ini menjatuhkan koleksi keseluruhan. Itu seperti mengosongkan kotak permainan Anda - hati-hati saat melakukan ini!
Mengelola Semua Koleksi
Akhirnya, mari kita lihat bagaimana kita dapat menampilkan semua koleksi di database kita.
for (String collectionName : database.listCollectionNames()) {
System.out.println(collectionName);
}
Kode ini menampilkan semua nama koleksi di database. Itu seperti membuat inventaris semua permainan Anda!
Berikut adalah tabel yang menggabungkan semua metode yang kita bahas:
Metode | Deskripsi |
---|---|
MongoClients.create() |
Membuat klien MongoDB |
mongoClient.getDatabase() |
Menghubungkan ke database |
database.getCollection() |
Mendapatkan atau membuat koleksi |
collection.insertOne() |
Menyisipkan dokumen |
collection.find() |
Mengambil dokumen |
collection.updateOne() |
Memperbarui dokumen |
collection.deleteOne() |
Menghapus dokumen |
collection.drop() |
Menghapus koleksi |
database.listCollectionNames() |
Menampilkan semua koleksi |
Dan begitu saja, teman-teman! Anda baru saja mengambil langkah pertama Anda ke dalam dunia menarik MongoDB dengan Java. Ingat, latihan membuat perfect, jadi jangan takut untuk mencoba dan mencoba kombinasi yang berbeda. Siapa tahu? Anda mungkin saja menciptakan aplikasi basis data-driven berikutnya yang besar! Semoga Anda sukses dalam coding!
Credits: Image by storyset