Skip to content

emka.web.id

menulis pengetahuan – merekam peradaban

Menu
  • Home
  • Tutorial
  • Search
Menu

Belajar JAVA: Pemrograman JAVA dengan Database MongoDB

Posted on October 15, 2011

Pendahuluan

Menyambung seri belajar MongoDB yang dulu dan melengkapi tutorial tentang JAVA dalam web ini. Kali ini kita akan belajar membuat program berbasis bahasa pemrograman JAVA dengan database MongoDB. Sebaiknya anda sudah membaca tutorial-tutorial sebelumnya tentang Apa itu MongoDB dan bagaimana Instalasinya (lihat pada Tulisan terkait dibawah post ini).

Yang perlu anda ingat dari MongoDB:

  • MongoDB secara otomatis akan membuatkan Database, Collection, Document, beserta field di dalamnya jika Anda belum pernah membuatnya. Dengan demikian Anda tidak perlu membuat batch SQL yang begitu panjang untuk persiapan membuat database.
  • Setiap document yang dibuat dalam MongoDB akan selalu memiliki index id yang unik. Hal ini secara global dapat mempercepat proses pencarian data.
  • MongoDB lebih mudah diimplementasikan dalam database berukuran besar yang terpisah dalam banyak server. Berbeda dengan RDBMS yang cukup sulit dalam melakukan konfigurasinya.
  • MongoDB tetap dapat membuat record yang berelasi terhadap record lainnya.

Instalasi MongoDB di Windows

  • Unduh file MongoDB dari http://www.mongodb.org/downloads/ pilih versi Windows,
  • Ekstrak file Zip tersebut pada direktori C:\ dan ubah namanyanya menjadi C:\mongodb
  • Buat direktori data untuk MongoDB di C:\data\db (harus seperti ini)
  • Jalankan daemon MongoDB mongod.exe yang berada di C:\mongodb\bin\

Pemrograman Aplikasi

  • Jalankan IDE anda (saya menggunakan Netbeans)
  • Unduh library MongoDB untuk Java di https://github.com/mongodb/mongo-java-driver/downloads
  • Pada project Java anda, klik kanan, pilih Properties -> Add Jar/Folder,
  • Pilih file Jar MongoDB yang anda unduh tadi, tekan OK
  • Pada source Main.Java atau class Java anda Importlah com.mongodb.* (sekalian biar mudah)
  • Definisikan object baru untuk layer database MongoDB

[sourcecode language=”java”]

package latihanmongodb;

import com.mongodb.*;

public class LatihanMongoDB {

/**
* @param args the command line arguments
*/
public static void main(String[] args) throws MongoException {
try {
// TODO code application logic here
Mongo mongo = new Mongo();

} catch (Exception ex) {
ex.printStackTrace();
}

}
}

[/sourcecode]

Untuk select database dan tabel dalam MongoDB (atau istilah tepatnya collection), buat object baru sebagai object Collection dengan pola db.getCollection(nama_tabel),kemudian gunakan perintah getCollection(). Contoh:

[sourcecode language=”java”]
DB db = mongo.getDB("akademik");
DBCollection collection = db.getCollection("mahasiswa");
[/sourcecode]

Untuk insert record ke dalam collection/tabel MongoDB, buat dulu sebuah object yang merepresentasikan BasicDBObject() (khusus MongoDB), dan masukkan dengan fungsi nama_object_collection.insert(nama object);

[sourcecode language=”java”]
BasicDBObject object = new BasicDBObject();
object.put("nim", "5301405005");
object.put("nama", "Luthfi Emka");

collection.insert(object);
[/sourcecode]

Untuk select data/record, buat sebuah object baru dari ArrayList dan DBCursor mongodb, dan tampilkan dengan while nama_object_list.add(nama_object_basicdb), contoh:

[sourcecode language=”java”]
ArrayList list = new ArrayList();

DBCursor cursor = collection.find();
while (cursor.hasNext()) {
DBObject object = cursor.next();
list.add(object);
}
[/sourcecode]

Untuk mengupdate/mengubah sebuah record pada mongodb gunakan method update(), contoh:

[sourcecode language=”java”]
BasicDBObject kriteria = new BasicDBObject();
kriteria.put("nim", "5301405005"); // cari data dengan nim = 5301405005

BasicDBObject object = new BasicDBObject();
object.put("nim", "530140500");
object.put("nama", "Luthfi Maslichul Kurniawan"); //diganti namanya

collection.update(kriteria, object); //eksekusi untuk mengupdate data
[/sourcecode]

Untuk menghapus data pada suatu tabel/collection, gunakan method remove(). Contoh:

[sourcecode language=”java”]
BasicDBObject kriteria = new BasicDBObject();
kriteria.put("nim", "5301405008"); //where nim=’5301405008′

collection.remove(kriteria);
[/sourcecode]

NB. Selalu tutup koneksi database MongoDB sehingga aplikasi lain dapat menggunakannya, gunakan fungsi mongo.close();

Berikut sourcecode lengkapnya:

[sourcecode language=”java”]

/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package latihanmongodb;

import com.mongodb.BasicDBObject;
import com.mongodb.Mongo;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.DBCursor;
import com.mongodb.DBObject;
import com.mongodb.MongoException;
import java.util.ArrayList;
import java.util.Arrays;

/**
*
* @author Luthfi Emka
*/
public class LatihanMongoDB {

/**
* @param args the command line arguments
*/
public static void main(String[] args) throws MongoException {
try {
// TODO code application logic here
Mongo mongo = new Mongo();

//select database akademik
DB db = mongo.getDB("akademik");
//select tabel mahasiswa
DBCollection collection = db.getCollection("mahasiswa");

//insert data
BasicDBObject object = new BasicDBObject();
object.put("nim", "5301405005");
object.put("nama", "Luthfi Emka");

object.put("nim", "5301405006");
object.put("nama", "Emka");

collection.insert(object);

//select dan tampilkan data yang ada
ArrayList list = new ArrayList();

DBCursor cursor = collection.find();
while (cursor.hasNext()) {
DBObject object_cursor = cursor.next();
list.add(object_cursor);
}
} catch (Exception ex) {
ex.printStackTrace();
}

}
}

[/sourcecode]

Download Source Code Latihan

  • via emka.web.id: https://emka.web.id/wp-content/uploads/2011/10/LatihanMongoDB.7z
  • via Uploaded: http://ul.to/oejuriia
  • via Ziddu: http://www.ziddu.com/download/16841044/LatihanMongoDB.7z.html

Terbaru

  • Inilah Cara Zakat Crypto Kalian Bisa Jadi Pengurang Pajak Berdasarkan Aturan Resmi Pemerintah!
  • Inilah Perbandingan Airwallex vs Payoneer 2026: Jangan Sampai Profit Kalian Ludes Gara-Gara Biaya Admin!
  • Inilah Roadmap 7 Tahap Bangun Bisnis Digital dari Nol Biar Nggak Cuma Putar-Putar di Tempat!
  • Inilah Cara Tetap Gajian dari YouTube Meski View Masih Ratusan, Penasaran?
  • Inilah Alasan Akun TikTok Affiliate GMV 270 Juta Kena Banned Permanen!
  • Inilah Bahaya Astute Beta Server APK, Jangan Sembarang Klik Link Download FF Kipas 2026!
  • Inilah Bahaya Nonton Film di LK21 dan IndoXXI, Awas Data Pribadi dan Saldo Rekening Kalian Bisa Ludes!
  • Inilah Kronologi & Video Lengkap Kasus Sejoli Tambelangan Sampang Viral, Ternyata Gini Awal Mulanya!
  • Inilah Alasan Kenapa Koin Nego Neko Shopee Nggak Bisa Dipakai Bayar Full dan Cara Rahasia Dapetinnya!
  • Inilah Cara Menjawab Pertanyaan Apakah di Sekolahmu Sudah Ada IFP/PID dengan Benar dan Profesional
  • Inilah Fakta Isu Roblox Diblokir di Indonesia 2026, Benarkah Akan Ditutup Total?
  • Inilah Penyebab dan Cara Mengatasi FF Kipas My ID Verify UID Biar Akun Tetap Aman
  • Inilah Deretan HP RAM 8GB Harga di Bawah 2 Juta Terbaik 2026, Spek Dewa Tapi Nggak Bikin Kantong Jebol!
  • Contoh Cara Buat SK Panitia TKA 2026
  • Inilah Cara Download Point Blank ID Versi Terbaru 2026, Gampang Banget Ternyata!
  • Inilah Persiapan Lengkap Gladi Bersih TKA 2026 SD dan SMP: Jadwal, Teknis Proktor, dan Aturan yang Wajib Kalian Tahu
  • Inilah Aturan Lengkapnya, Apakah Zakat dalam Bentuk Barang Bisa Mengurangi Pajak Penghasilan Kalian?
  • Inilah Kenapa KBLI Sangat Penting Buat Bisnis Digital dan Gini Caranya Biar Kalian Nggak Salah Pilih Kode
  • Inilah Fitur Keren ONLYOFFICE Docs 9.3, Cara Baru Edit PDF dan Dokumen Lebih Efisien!
  • Inilah Cara Banjir Komisi Shopee Affiliate Hanya Dalam 7 Hari Saja
  • Cara Download Aplikasi BUSSID Versi 3.7.1 Masih Dicari dan Link Download Aman Mediafire
  • Inilah Cara Lengkap Mengajukan SKMT dan SKBK di EMIS GTK 2026, Biar Tunjangan Cair Tanpa Drama!
  • Inilah Kenapa Bukti Setor Zakat Kalian Harus Ada NPWP-nya, Jangan Sampai Klaim Pajak Ditolak!
  • Inilah Cara Jadi Clipper Video Sukses Tanpa Perlu Tampil di Depan Kamera
  • Inilah Cara Upload NPWP dan Rekening di EMIS GTK Madrasah Terbaru, Jangan Sampai Tunjangan Terhambat!
  • Inilah Fakta di Balik Video Ukhti Sholat Mukena Pink Viral yang Bikin Geger Media Sosial
  • Belum Tahu? Inilah Langkah Pengisian Survei Digitalisasi Pembelajaran 2026 Biar Nggak Salah
  • Ini Kronologi Video Viral Ibu Tiri vs Anak Tiri Ladang Sawit Tiktok
  • Inilah Caranya Update Chromebook Sekolah Agar Siap Digunakan untuk TKA SD dan SMP
  • Inilah Caranya Menghindari Mafia Kontraktor Renovasi Nakal Supaya Budget Nggak Boncos
  • How to Run Windows Apps on Linux: A Complete Guide to WinBoat, WINE, and Beyond
  • Build Your Own AI Development Team: Deploying OpenClaw and Claude Code on a VPS!
  • How to Measure Real Success in the Age of AI: A Guide to Software Metrics That Actually Matter
  • Kubernetes Traffic Tutorial: How to Create Pod-Level Firewalls (Network Policies)
  • This Is Discord Malware: Soylamos; How to Detect & Prevent it
  • How to Importing and Exporting Memory in Claude
  • How to Create Professional Business Guides and One-Pagers in Seconds with Venngage AI!
  • How to the OWASP Top 10 Security Risks, Attacking LLM
  • How to Create Visual Storytelling with Higgsfield Soul 2.0
  • How to Use the Tiiny AI Pocket Lab to Run Local Large Language Models
  • Apa itu Spear-Phishing via npm? Ini Pengertian dan Cara Kerjanya yang Makin Licin
  • Apa Itu Predator Spyware? Ini Pengertian dan Kontroversi Penghapusan Sanksinya
  • Mengenal Apa itu TONESHELL: Backdoor Berbahaya dari Kelompok Mustang Panda
  • Siapa itu Kelompok Hacker Silver Fox?
  • Apa itu CVE-2025-52691 SmarterMail? Celah Keamanan Paling Berbahaya Tahun 2025

©2026 emka.web.id | Design: Newspaperly WordPress Theme