MongoDB - Java: A Panduan Pemula
Haiya, pengguna MongoDB yang bakal menjadi ahli! Saya sangat gembira untuk menjadi panduanmu dalam perjalanan menarik ini ke dunia MongoDB menggunakan Java. Sebagai seseorang yang telah mengajar sains komputer selama bertahun-tahun, saya dapat katakan bahwa kombinasi ini seperti mentega dan jelly - benar-benar lezat! Jadi, mari kita lipat lengan dan masuk ke dalam, bagaimana?
Pemasangan
Sebelum kita mulai menciptakan keajaiban MongoDB, kita perlu mempersiapkan dapur (err... lingkungan pengembangan) kita. Jangan khawatir, ini lebih mudah daripada mengassembly furniture IKEA!
- Pertama, unduh dan install MongoDB dari situs web resmi.
- Selanjutnya, kita perlu menambah 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!
Menyambung ke Database
Sekarang kita sudah siap, mari kita menyambung 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");
// Sambung ke database
MongoDatabase database = mongoClient.getDatabase("myDatabase");
System.out.println("Terhubung ke database secara sukses!");
}
}
Dalam kode ini, kita membuat MongoClient
dan menggunakannya untuk menyambung ke database bernama "myDatabase". Jika database itu belum ada, MongoDB akan menciptakan itu bagi kita. Apakah itu tidak menarik?
Membuat Koleksi
Koleksi di MongoDB mirip seperti tabel di basis data relasional, tapi jauh lebih keren. Mereka tanpa skema, yang berarti mereka dapat menampung jenis dokumen yang berbeda. Itu seperti pesta di mana semua orang diundang!
import com.mongodb.client.MongoCollection;
import org.bson.Document;
// ... (kode sebelumnya untuk menyambung 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 jika koleksi bernama "myCollection" ada. Jika tidak, ia menciptakan satu. Itu seperti memeriksa jika Anda punya susu di kulkas, dan jika tidak, Anda pergi membeli satu!
Memilih Koleksi
Setelah kita memiliki koleksi, kita perlu tahu bagaimana memilih mereka. Itu seperti memilih mainan mana yang akan dimainkan dari kotak mainanmu!
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 koleksimu. Dalam MongoDB, data disimpan sebagai 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 disisipkan secara sukses!");
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 dapat mengambilnya? Mari kitaambil semua dokumen dari koleksimu.
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 sebagai JSON. Itu seperti meminta semua kue di wadah 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 diperbarui secara sukses!");
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 basis datamu lagi.
collection.deleteOne(eq("name", "John Doe"));
System.out.println("Dokumen dihapus secara sukses!");
Kode ini menghapus dokumen John Doe. Itu seperti menghapus kesalahan di pekerjaan rumah Anda!
Membuang Koleksi
Jika kita ingin menghapus koleksi keseluruhan, kita dapat membuangnya.
collection.drop();
System.out.println("Koleksi dibuang secara sukses!");
Kode ini membuang koleksi keseluruhan. Itu seperti mengosongkan kotak mainan Anda - hati-hati saat melakukan ini!
Menampilkan Semua Koleksi
Akhirnya, mari kita lihat bagaimana kita dapat menampilkan semua koleksi dalam basis data kita.
for (String collectionName : database.listCollectionNames()) {
System.out.println(collectionName);
}
Kode ini menampilkan semua nama koleksi dalam basis data. Itu seperti membuat inventaris semua permainan yang Anda punya!
Berikut adalah tabel yang menggabungkan semua metode yang kita pelajari:
Metode | Deskripsi |
---|---|
MongoClients.create() |
Membuat klien MongoDB |
mongoClient.getDatabase() |
Menyambung 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() |
Membuang koleksi |
database.listCollectionNames() |
Menampilkan semua koleksi |
Dan begitu saja, teman-teman! Anda telah mengambil langkah pertama Anda ke dalam dunia menarik MongoDB dengan Java. Ingat, latihan membuat ahli, jadi jangan takut untuk mencoba dan mencoba kombinasi yang berbeda. Siapa tahu? Anda mungkin saja menciptakan aplikasi basis data-driven berikutnya yang besar! Selamat coding!
Credits: Image by storyset