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

  • Survei Parpol Terbaru: Gerindra Unggul, PDIP Ketiga, PKB 5%
  • PKB Resmi Jalin Kerjasama dengan Institut Teknologi & Sains NU Kalimantan
  • Inilah Urutan Terbaru Pangkat TNI Angkatan Darat! (Update 2026)
  • Inilah Panduan Lengkap Operator Sekolah Mengelola SPTJM e-Ijazah dan Menghindari Kesalahan Fatal Data Kelulusan
  • Inilah Syarat dan Penilaian Seleksi Siswa Unggul ITB Jalur UTBK
  • Download Video Viral Guru Bahasa Inggris? Awas Berisi Virus!
  • PKB Minta Kasus C4bul Pendiri Ponpes Pati Tidak Ada Ampunan & Tuntutan Maksimal
  • Inilah Kronologi Video Viral Preman vs Sopir Di Sumedang
  • Ini Alasan UKP Pariwisata Disindir Konten Kreator Drone Gunung Rinjani
  • Inilah Kronologi Viral Video Dugaan Asusila Pegawai Disdik Pasuruan di Mobil Dinas
  • Polisi Polda Sumut Resmi Dipecat: Dari Video Viral Sampai Sidang Etik Ini Kronologinya
  • ASUS ExpertBook Ultra: Produk Flagship yang Cerminkan Kepemimpinan ASUS di Pasar Global
  • Inilah Tahapan dan Syarat Pendaftaran Beasiswa Garuda 2026 Gelombang II (25 Mei – 25 Juni 2026)
  • Ini Maksud Soal Tugas Guru Non-ASN Berakhir 2027!
  • Apa Itu Siscamling? Inilah Cara Mengaktifkan Paket Anti Spam Telkomsel
  • Sah, Nilai TKA Jadi Salah Satu Komponen Seleksi Siswa SPMB Secara Nasional 2026
  • Inilah 3 Lagi Pinjol Ilegal Menurut OJK Tahun 2026
  • Cara Login Proktor Browser OSN Mode Online, Uji Coba OSN Semua Jenjang Terbaru
  • Inilah Link Web Komunikasi OSN 2026 anbk.kemendikdasmen.go.id/osnk ANBK Kemendikdasmen untuk Simulasi
  • Inilah Jadwal Pembagian Deviden BBRI 2026, Siap-siap!
  • Ini Alasan Kenapa Followers IG Berkurang Sendiri Mei 2026?
  • Panduan Download vhd-osnk-2025_fresh versi 29.25.5.0 untuk Uji Coba OSN-K SMA SMP Sederajat 2026
  • Iniloh Syarat dan Komponen Nilai Seleksi Siswa Unggul ITB Jalur Nilai Rapor 2026/2027
  • Inilah Syarat dan Prosedur Ikut Seleksi Siswa Unggul ITB Jalur Tes Tulis 2026/2027
  • Inilah Kronologi & Latar Belakang Kasus Erin Taulany vs ART Hera: Masalah Facebook Pro?
  • Inilah Alasan Kenapa Ending Film Children of Heaven diubah di Indonesia
  • Ini Alasan Hanny Kristianto Cabut Sertifikat Mualaf Richard Lee
  • Inilah Syarat Dokumen SSU ITB 2024-2026 yang Wajib Kalian Siapkan Supaya Nggak Gagal Seleksi Administrasi
  • Inilah Episyrphus Balteatus, Lalat Unik Penyamar yang Sangat Bermanfaat bagi Taman Kalian
  • Inilah Cara Lolos Seleksi Siswa Unggul ITB Lewat Jalur Tes Tulis Biar Jadi Mahasiswa Ganesha
  • How to build a high-performance private photo cloud with Immich and TrueNAS SCALE
  • How to Build an Endgame Local AI Agent Setup Using an 8-Node NVIDIA Cluster with 1TB Memory
  • How to Master Windows Event Logs to Level Up Your Cybersecurity Investigations and SOC Career
  • How to Build Ultra-Resilient Databases with Amazon Aurora Global Database and RDS Proxy for Maximum Uptime and Performance
  • How to Build Real-Time Personalization Systems Using AWS Agentic AI to Make Every User Feel Special
  • How to Use Anthropic’s New AI Agents to Automate Your Financial Workflows Like a Pro
  • How to Secure Brand Deals Easily Using AI-Powered Professional Pitch Estimates in Just a Few Clicks
  • How to Master Google’s NotebookLM and Its Revolutionary AI Features for Smarter Learning
  • How to Use Claude AI in PowerPoint to Create Amazing Presentations Automatically
  • How to Utilize OpenAI’s Advanced Real-time Voice Models for Interactive Applications
  • 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