SlideShare ist ein Scribd-Unternehmen logo
1 von 11
Downloaden Sie, um offline zu lesen
85
AKSES DATABASE
MENGGUNAKAN JDBC
Pada bab ini Anda akan belajar bagaimana membuat program
koneksi Java dengan database Access dan MySQL. Selain itu, Anda
juga akan diajarkan bagaimana membuat program sederhana
dengan kedua database tersebut.
5.1 DBMS dengan MySQL
Software database ini cukup familiar bagi programmer berbasis open
source dan para pengembang aplikasi client-server, terutama web
programming. Untuk bisa mengakses MySql dibutuhkan driver yang
bisa menjembatani antara dabase ini dengan mesin java.
Jika Anda belum memiliki installer-nya, kunjungi situs
http://www.mysql.com atau http://dev.mysql.com/doc/mysql/en
untuk mendapatkan manualnya. Dalam hal ini penulis menggunakan
distribusi dari pihak ketiga/pengembang lain yang memanfaatkan
database tersebut dengan bantuan program pendukung lainnya,
yaitu AppServ. Program bantu ini untuk manajemen basis data
MySQL dengan skrip php dan dilengkapi server Apache. Untuk
mendapatkannya, Anda bisa mengunjungi alamat
http://appservnetwork.com (Anda juga bisa mendapatkan file dalam
86
bonus CD buku ini). Program tersebut free jadi Anda tidak usah resah
dengan biaya. Program tersebut juga sudah didukung dengan
PhpMyAdmin sebuah end user database management yang sudah
dikenal luas oleh para pengembang database server oriented/Web
programming.
Pastikan web server dan mysql sudah berjalan. Jika Anda menggu-
nakan Windows XP, lihat dari Control Panel Administrative Tool
Services sehingga muncul jendela semua servis yang sedang
berjalan dalam komputer. Pastikan bahwa Apache2.2 dan mysql
sudah berjalan.
Gambar 5.1 Servis Apache
Gambar 5.2 Servis MySQL
Anda bisa menggunakan database manajemen yang lain yang
berbasiskan desktop (stand alone) atau berbasis web. Untuk mela-
kukan manajemen database menggunakan web base interface,
lakukan bebarapa langkah berikut ini:
1. Pastikan bahwa Anda sudah memasang Database server MySQL,
Webserver Apache, dan PHP, serta PHPMyAdmin dalam
komputer Anda. Anda bisa mengopi dari bonus CD (folder
software/appserv-win32-2.5.10.exe) kalau belum memilikinya.
87
2. Jalankan WebBrowser, ketikkan alamat
http://localhost/phpMyAdmin. Anda juga bisa mengganti
localhost dengan nama komputer Anda, sehingga muncul
halaman utama. Perhatikan Gambar 5.3.
3. Buat database baru, dengan cara memasukkan namanya dalam
kotak isian Create new database. Ketikkan latihan_b5, lalu klik
tombol Create seperti pada Gambar 5.3.
Gambar 5.3 Tampilan PhpMyAdmin
4. Jendela yang muncul selanjutnya adalah seperti Gambar 5.4,
yaitu pesan pembuatan database sukses. Dan tersedia untuk
memasukkan nama tabel baru dalam database tersebut. Anda
bisa membuat tabelnya, dengan cara memasukkan nama tabel
pada kotak isian name di panel Create new table on latihan_b5.
Ketikkan mahasiswa kemudian isi jumlah kolomnya pada kotak
isian Number of fields. Ketikkan 4 (pada panel yang sama),
kemudian klik tombol Go. Perhatikan Gambar 5.4 dan langkah
selanjutnya pada Gambar 5.5.
Gambar 5.4 Membuat Table Baru
88
5. Pada langkah pemasukan data tabel dengan kolom-kolom yang
tersedia seperti Gambar 5.5, isikan semua nama kolom pada
kotak yang sudah disediakan. Jangan lupa mengisikan juga tipe
data pada kolom Type dan panjangnya pada kolom Length/
Values. Setelah terisi semua, klik tombol Save.
Gambar 5.5 Mengisi Kolom Tabel Baru
6. Langkah berikutnya adalah membuat kunci utama pada tabel ini
dengan cara: masuk dalam struktur tabel (klik link menu
Structure). Kemudian pada sebelah kanan terlihat gambar kunci,
sorot pada baris no_mhs, kemudian arahkan mouse pada tombol
kunci tersebut (lihat Gambar 5.6). Setelah itu program akan
menampilkan pesan konfirmasi tentang pembuatan kunci
tersebut.
Gambar 5.6 Menambahkan Primary Key
89
Gambar 5.7 Konfirmasi Penambahan Kunci
7. Selanjutnya Anda perlu memasukkan beberapa data untuk
latihan koneksi database dengan Java. Sekarang, klik tombol
Insert pada deretan menu yang ada di sisi atas, kemudian
masukkan beberapa data yang diperlukan.
Gambar 5.8 Tombol-Tombol Fungsional phpMyAdmin
Gambar 5.9 Pemasukan Data Baru
8. Terakhir, klik tombol Go.
90
5.2 Membuat Koneksi untuk MySQL
Tibalah waktunya untuk membuat programnya. Buat dengan editor
yang paling ringan. Sekarang jangan gunakan editor yang hight end
user dulu karena yang kita buat sekarang belum membutuhkan
desain yang rumit. Prinsipnya, gunakan alat yang sesuai kebutuhan
agar selalu efektif dalam bekerja. Pakailah editor Gel dan lakukan
langkah-langkah berikut ini:
1. Buat proyek baru, beri nama Database.
2. Tambahkan kelas baru dalam proyek tersebut, beri nama
KoneksiMysql.
3. Setting library driver Mysql dalam editor Gel untuk proyek ini.
Jika dalam editor Anda tidak di-setting secara global dalam
Options (menu Options pada tab classpath), maka Anda harus
melakukan setting setiap proyek. Untuk itu lakukan setting
secara global pada Gel, dengan cara:
a. Masuk dalam jendela Options.
b. Masuk dalam tab Classpath.
c. Tekan tombol Add File pilih file driver MySQL. Jika Anda
belum memiliki, bisa mengopi dari bonus CD, silakan kopi
file mysql-connector-java-5.1.6-bin.jar dalam folder com dan
letakkan dalam folder latihan bab5.
4. Ketik dan sesuaikan kode program Anda seperti berikut:
import java.sql.*;
public class KoneksiMysql {
private String host="localhost";
private String user="root";
private String password="admin";
private String db=" latihan_b5";
public KoneksiMysql() {
Connection conn;
Statement st;
ResultSet rs;
int no=0;
try {
91
Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection(
"jdbc:mysql://"+ host +"/"+ db
+"?user=" +user+
"&password="+ password);
st = conn.createStatement();
rs = st.executeQuery("Select * from
mahasiswa");
while (rs.next()) {
no=no+1;
System.out.println(no + ")");
System.out.println("No Mhs :" +
rs.getString("no_mhs"));
System.out.println("Nama :" +
rs.getString("nama"));
System.out.println("Alamat :" +
rs.getString(3));
System.out.println("Jurusan :" +
rs.getString(4));
System.out.println("============" +
"====================");
}
conn.close();
}
catch(Exception e) {
System.out.println(
"Pesan kesalahan : "+ e.getMessage());
}
}
public static void main(String[] args) {
KoneksiMysql koneksimysql = new KoneksiMysql();
}
}
5. Pastikan bahwa properti host, user, password dan db sudah
disesuaikan dengan konfigurasi user MySQL dalam komputer
Anda. Jika tidak, Anda dijamin gagal dalam menampilkan data
dari database tersebut.
private String host="localhost";
private String user="root";
private String password="admin";
private String db=" latihan_b5";
6. Compile dan jalankan program.
92
Gambar 5.10 Keluaran dari KoneksiMySQL.java
Properti host, user, password dan db dipakai untuk akses ke dalam
database MySQL. Pada constructor KoneksiMysql terdapat kelas
bertipe Connection dan Statement. Kelas tersebut dipakai untuk
koneksi ke dalam database melalui query, sedangkan kelas
ResultSet dipakai untuk menyimpan hasil query dalam bentuk kum-
pulan data yang bisa diakses secara berurutan. Sedangkan perintah
Class.forName("com.mysql.jdbc.Driver") adalah untuk me-
lakukan pengenalan terhadap driver database yang digunakan, yaitu
com.mysql.jdbc.Driver. Jika kelas ini tidak ditemukan dalam class
path, koneksi akan gagal.
93
5.3 Design DB Paket
Dalam buku Java yang kami terbitkan sebelumnya (Membuat
Aplikasi Penjualan dengan Java dan MySQL) telah dijelaskan
tentang kelas-kelas untuk mengakses dan manajemen database versi
1.0.0, termasuk pembuatannya, antara lain kelas DB, DBTable,
DBQuery, DriverConnection, MyTable dan Utils.
Sebenarnya dalam buku ini juga menggunakan kelas yang sudah
dipakai pada buku sebelumnya, tetapi sudah di-update ke versi
2.0.0. Secara prinsip dasarnya adalah sama, sehingga tidak perlu lagi
dibahas dalam buku ini. Namun, perlu penulis gambarkan peran-
cangan paket ini agar lebih mudah untuk dipahami bagi pembaca,
baik yang belum pernah membaca buku pertama, atau yang sudah
pernah membaca buku sebelumnya.
5.3.1 DB.java
Kelas ini adalah abstraksi dari objek tabel fisik dalam sebuah
database. Agar kita bisa melakukan pengambilan data dan mela-
kukan modifikasi terhadap data (tabel) tersebut dengan cepat dan
mudah. Serta tidak mengetikkan program sama secara berulang-
ulang.
Seperti yang kita ketahui sebelumnya bahwa untuk mengambil data
dalam tabel perlu melakukan pengenalan driver database, membuat
statement, kemudian menjalankan query yang disimpan dalam
sebuah recordset (himpunan record). Sehingga setiap kali kita
melakukan operasi baca/tulis, sejumlah perintah program akan kita
tuliskan berulang-ulang. Hal itu tidak salah, tetapi akan lebih baik jika
kita membuat sebuah objek yang bisa menggantikan pekerjaan itu.
Sehingga penulisan kode program akan menjadi sederhana dan
mudah dalam proses pengembangannya. Inilah keuntungannya
pemrograman yang bersifat modular (tersusun atas modul-modul).
5.3.2 DBTable.java
Kelas ini diturunkan dari kelas DB, yang dikhususkan untuk
menangani hubungan dengan sebuah tabel saja. Properti yang
dimilikinya adalah tableName yang menyimpan informasi nama
tabel dalam database yang akan dibaca/ditulis.
94
Method yang dimilikinya adalah setTableName untuk mengubah/
menentukan nama tabel dan method makeActive untuk meng-
aktifkan data dalam komponen DBTable ini. Dan method init untuk
memasukkan perintah SQL agar membuka satu tabel tertentu. Tentu
saja selain metode di atas, komponen ini juga memiliki seluruh
kemampuan nenek moyangnya, yaitu kelas DB.
5.3.3 DBQuery.java
Kelas ini diturunkan dari kelas DB, yang memiliki kemampuan untuk
melakukan pengambilan data melalui query dalam database (bisa
membaca dari beberapa tabel sekaligus, atau hanya beberapa kolom
saja dari total tertentu).
Metode init digunakan untuk menentukan tipe recordset-nya menjadi
readonly (tidak untuk edit), sedangkan makeActive digunakan untuk
mengaktifkan data dalam komponen DBQuery.
5.3.4 DBCombo.java
Kelas ini diturunkan dari kelas DBQuery, yang memiliki kemampuan
untuk melakukan pengambilan data melalui query dan siap untuk
meletakkan data dalam sebuah combobox. Dengan berbagai kondisi
atau pilihan data untuk ditampilkan secara dinamis.
5.3.5 MyModelTable.java
Komponen ini hampir sama dengan DefaultTableModel dalam paket
java.swing.table, yaitu komponen yang mampu menampilkan
tabular data/tabel. Karena kami memang mengembangkan dari
kelas tersebut agar bisa disesuaikan dengan kebutuhan aplikasi yang
kita buat. Selalu gunakan sederhana saja, yaitu: “pelajari yang sudah
ditulis pengembang terdahulu, baru dikembangkan semaksimal
mungkin”.
Untuk pengembangan, properti yang ditambahkan antara lain
readOnlyCol untuk menyimpan informasi mengenai atribut setiap
kolom dalam tabel, sehingga kita bisa menentukan kolom mana
yang boleh diedit atau mana yang tidak boleh diedit. Sedangkan
method yang ditambahkan antara lain setReadOnlyCol untuk
mengisi properti readOnlyCol.
95
5.3.6 MyTable
Komponen ini adalah sebuah kontainer panel yang memuat kelas
JscrollPanel dan JTable dengan model tabelnya adalah
MyModelTable. Dengan kemampuan khusus, untuk menampilkan
data dari database ke dalam bentuk tabel (tabular data) dibungkus
dalam satu kelas agar memudahkan dalam pengembangan dan
mengurangi kompleksitas program.
5.3.7 Utils
Kelas ini digunakan untuk keperluan yang bersifat umum,
independent dan sering kali digunakan, seperti halnya fungsi-fungsi
standar pada Java. Contohnya fungsi-fungsi bilangan parseInt,
parseDouble dan sebagainya. Di sini akan dibuat dua buah metode
showMessage() untuk menampilkan pesan, dan isNumber() untuk
mengetahui sebuah string tertentu berformat angka atau bukan.
DB
DBTable DBQuery
DBCombo
DriverConnection
MyModelTable MyTable
Utils
Gambar 5.11 Desain DBPaket
ooo0ooo

Weitere ähnliche Inhalte

Was ist angesagt?

Membuat aplikasi-java-web-enterprise-sederhana
Membuat aplikasi-java-web-enterprise-sederhanaMembuat aplikasi-java-web-enterprise-sederhana
Membuat aplikasi-java-web-enterprise-sederhana
Jogal
 
Tutorial web service (web & client) with spring web services
Tutorial web service (web & client) with spring web servicesTutorial web service (web & client) with spring web services
Tutorial web service (web & client) with spring web services
muhammad arif nasution
 
Membuat installer by depandi enda
Membuat installer by depandi endaMembuat installer by depandi enda
Membuat installer by depandi enda
Devandy Enda
 
Visual basic 6
Visual basic 6Visual basic 6
Visual basic 6
safarinet
 
Dasar pemrograman-visual-basic1
Dasar pemrograman-visual-basic1Dasar pemrograman-visual-basic1
Dasar pemrograman-visual-basic1
Afifa Rosyida
 

Was ist angesagt? (20)

[PBO] Pertemuan 13 - Membuat Aplikasi Desktop dengan JDBC DAO MVC
[PBO] Pertemuan 13 - Membuat Aplikasi Desktop dengan JDBC DAO MVC[PBO] Pertemuan 13 - Membuat Aplikasi Desktop dengan JDBC DAO MVC
[PBO] Pertemuan 13 - Membuat Aplikasi Desktop dengan JDBC DAO MVC
 
Membuat aplikasi-sederhana-menggunakan-java
Membuat aplikasi-sederhana-menggunakan-javaMembuat aplikasi-sederhana-menggunakan-java
Membuat aplikasi-sederhana-menggunakan-java
 
Membuat aplikasi-java-web-enterprise-sederhana
Membuat aplikasi-java-web-enterprise-sederhanaMembuat aplikasi-java-web-enterprise-sederhana
Membuat aplikasi-java-web-enterprise-sederhana
 
MudafiqRiyan - Membuat Installer Dari Java Desktop
MudafiqRiyan - Membuat Installer Dari Java DesktopMudafiqRiyan - Membuat Installer Dari Java Desktop
MudafiqRiyan - Membuat Installer Dari Java Desktop
 
Belajar Java dasar
Belajar Java dasarBelajar Java dasar
Belajar Java dasar
 
Tutorial web service (web & client) with spring web services
Tutorial web service (web & client) with spring web servicesTutorial web service (web & client) with spring web services
Tutorial web service (web & client) with spring web services
 
Menjaga Validasi tanggal dengan Jcalendar pada java
Menjaga Validasi tanggal dengan Jcalendar pada javaMenjaga Validasi tanggal dengan Jcalendar pada java
Menjaga Validasi tanggal dengan Jcalendar pada java
 
[PBO] Pertemuan 11 - GUI Java Desktop
[PBO] Pertemuan 11 - GUI Java Desktop[PBO] Pertemuan 11 - GUI Java Desktop
[PBO] Pertemuan 11 - GUI Java Desktop
 
Pemograman Visual Akutansi 1
Pemograman Visual Akutansi 1 Pemograman Visual Akutansi 1
Pemograman Visual Akutansi 1
 
Belajar netbeans java pemula dari 0 sampai mahir
Belajar netbeans java pemula dari 0 sampai mahirBelajar netbeans java pemula dari 0 sampai mahir
Belajar netbeans java pemula dari 0 sampai mahir
 
Tutorial pembuatan REST Service pada Support System menggunakan Servlet dan GSON
Tutorial pembuatan REST Service pada Support System menggunakan Servlet dan GSONTutorial pembuatan REST Service pada Support System menggunakan Servlet dan GSON
Tutorial pembuatan REST Service pada Support System menggunakan Servlet dan GSON
 
Membuat aplikasi chat menggunakan java
Membuat aplikasi chat menggunakan javaMembuat aplikasi chat menggunakan java
Membuat aplikasi chat menggunakan java
 
Membuat installer by depandi enda
Membuat installer by depandi endaMembuat installer by depandi enda
Membuat installer by depandi enda
 
Part 2 - PENGENALAN VISUAL STUDIO 2010
Part 2 - PENGENALAN VISUAL STUDIO 2010Part 2 - PENGENALAN VISUAL STUDIO 2010
Part 2 - PENGENALAN VISUAL STUDIO 2010
 
Visual basic 6
Visual basic 6Visual basic 6
Visual basic 6
 
[PBO] Pertemuan 3 - Package, enkapsulasi & instansiasi objek
[PBO] Pertemuan 3 - Package, enkapsulasi & instansiasi objek[PBO] Pertemuan 3 - Package, enkapsulasi & instansiasi objek
[PBO] Pertemuan 3 - Package, enkapsulasi & instansiasi objek
 
Aplikasi Pemesanan Bus Berbasis Desktop
Aplikasi Pemesanan Bus Berbasis DesktopAplikasi Pemesanan Bus Berbasis Desktop
Aplikasi Pemesanan Bus Berbasis Desktop
 
Dasar pemrograman-visual-basic1
Dasar pemrograman-visual-basic1Dasar pemrograman-visual-basic1
Dasar pemrograman-visual-basic1
 
Modul praktikum-pemrograman java dgn netbeans
Modul praktikum-pemrograman java dgn netbeansModul praktikum-pemrograman java dgn netbeans
Modul praktikum-pemrograman java dgn netbeans
 
Panduan moodle
Panduan moodlePanduan moodle
Panduan moodle
 

Ähnlich wie Membuat aplikasi-rental-dengan-java-dan-my sql

Buat web dgn php mysql dreamweaver
Buat web dgn php mysql dreamweaverBuat web dgn php mysql dreamweaver
Buat web dgn php mysql dreamweaver
Haswi Haswi
 
Ws 01-install appserv+xampp+konfigurasi file
Ws 01-install appserv+xampp+konfigurasi fileWs 01-install appserv+xampp+konfigurasi file
Ws 01-install appserv+xampp+konfigurasi file
Wahiduna ElQudsy
 
Modul my sql tutorial part 1
Modul my sql tutorial part 1Modul my sql tutorial part 1
Modul my sql tutorial part 1
Ratzman III
 
Tutorial menginstal-wordpress-secara-offline-di-windows
Tutorial menginstal-wordpress-secara-offline-di-windowsTutorial menginstal-wordpress-secara-offline-di-windows
Tutorial menginstal-wordpress-secara-offline-di-windows
Eccha Nourul
 
Manipulasi database mysql dgn php
Manipulasi database mysql dgn phpManipulasi database mysql dgn php
Manipulasi database mysql dgn php
Haswi Haswi
 

Ähnlich wie Membuat aplikasi-rental-dengan-java-dan-my sql (20)

Web dengan php mysql dreamweaver
Web dengan php mysql dreamweaverWeb dengan php mysql dreamweaver
Web dengan php mysql dreamweaver
 
Buat web dgn php mysql dreamweaver
Buat web dgn php mysql dreamweaverBuat web dgn php mysql dreamweaver
Buat web dgn php mysql dreamweaver
 
Database server
Database serverDatabase server
Database server
 
Database server lanjutan 1
Database server lanjutan 1Database server lanjutan 1
Database server lanjutan 1
 
Ws 01-install appserv+xampp+konfigurasi file
Ws 01-install appserv+xampp+konfigurasi fileWs 01-install appserv+xampp+konfigurasi file
Ws 01-install appserv+xampp+konfigurasi file
 
Laporan praktikum modul 6 pemrogrman database dengan jdbc
Laporan praktikum modul 6 pemrogrman database dengan jdbcLaporan praktikum modul 6 pemrogrman database dengan jdbc
Laporan praktikum modul 6 pemrogrman database dengan jdbc
 
Modul my sql tutorial part 1
Modul my sql tutorial part 1Modul my sql tutorial part 1
Modul my sql tutorial part 1
 
Tutorial menginstal-wordpress-secara-offline-di-windows
Tutorial menginstal-wordpress-secara-offline-di-windowsTutorial menginstal-wordpress-secara-offline-di-windows
Tutorial menginstal-wordpress-secara-offline-di-windows
 
Distributed Database Using Oracle
Distributed Database Using OracleDistributed Database Using Oracle
Distributed Database Using Oracle
 
Distributed Database Using Oracle
Distributed Database Using OracleDistributed Database Using Oracle
Distributed Database Using Oracle
 
setup widget dan work directory matlab
setup widget dan work directory matlabsetup widget dan work directory matlab
setup widget dan work directory matlab
 
Laporan praktikum modul 5 (pemrogrman database dengan odbc)
Laporan praktikum modul 5 (pemrogrman database dengan odbc)Laporan praktikum modul 5 (pemrogrman database dengan odbc)
Laporan praktikum modul 5 (pemrogrman database dengan odbc)
 
Membuat Login dengan Menghubungkan ke Database di VB.NET
Membuat Login dengan Menghubungkan ke Database di VB.NETMembuat Login dengan Menghubungkan ke Database di VB.NET
Membuat Login dengan Menghubungkan ke Database di VB.NET
 
Tutorial Postgre SQL
Tutorial Postgre SQLTutorial Postgre SQL
Tutorial Postgre SQL
 
Modul Praktikum Sistem Basis Data
Modul Praktikum Sistem Basis Data Modul Praktikum Sistem Basis Data
Modul Praktikum Sistem Basis Data
 
Tugas php
Tugas phpTugas php
Tugas php
 
Vb mysql-41
Vb mysql-41Vb mysql-41
Vb mysql-41
 
Manipulasi database mysql dgn php
Manipulasi database mysql dgn phpManipulasi database mysql dgn php
Manipulasi database mysql dgn php
 
P webfb
P webfbP webfb
P webfb
 
Modul Praktikum Pemrograman Berorientasi Objek (Chap.12)
Modul Praktikum Pemrograman Berorientasi Objek (Chap.12)Modul Praktikum Pemrograman Berorientasi Objek (Chap.12)
Modul Praktikum Pemrograman Berorientasi Objek (Chap.12)
 

Mehr von Irwan Syah

Optimasi blogspot
Optimasi blogspotOptimasi blogspot
Optimasi blogspot
Irwan Syah
 
Goji koneksi-java-access-odbc
Goji koneksi-java-access-odbcGoji koneksi-java-access-odbc
Goji koneksi-java-access-odbc
Irwan Syah
 
21 kumpulan jurus ngeblog yang bikin go blog!
21 kumpulan jurus ngeblog yang bikin go blog!21 kumpulan jurus ngeblog yang bikin go blog!
21 kumpulan jurus ngeblog yang bikin go blog!
Irwan Syah
 
Pkm ub-lolos-didanai-20131
Pkm ub-lolos-didanai-20131Pkm ub-lolos-didanai-20131
Pkm ub-lolos-didanai-20131
Irwan Syah
 
Contoh dan penjelasan pkm teknologi
Contoh dan penjelasan pkm teknologiContoh dan penjelasan pkm teknologi
Contoh dan penjelasan pkm teknologi
Irwan Syah
 

Mehr von Irwan Syah (9)

Optimasi blogspot
Optimasi blogspotOptimasi blogspot
Optimasi blogspot
 
Konsep si
Konsep siKonsep si
Konsep si
 
Jav mysql-fix
Jav mysql-fixJav mysql-fix
Jav mysql-fix
 
Goji koneksi-java-access-odbc
Goji koneksi-java-access-odbcGoji koneksi-java-access-odbc
Goji koneksi-java-access-odbc
 
Gamejavaj2me
Gamejavaj2meGamejavaj2me
Gamejavaj2me
 
21 kumpulan jurus ngeblog yang bikin go blog!
21 kumpulan jurus ngeblog yang bikin go blog!21 kumpulan jurus ngeblog yang bikin go blog!
21 kumpulan jurus ngeblog yang bikin go blog!
 
pkm-2013-ft
pkm-2013-ftpkm-2013-ft
pkm-2013-ft
 
Pkm ub-lolos-didanai-20131
Pkm ub-lolos-didanai-20131Pkm ub-lolos-didanai-20131
Pkm ub-lolos-didanai-20131
 
Contoh dan penjelasan pkm teknologi
Contoh dan penjelasan pkm teknologiContoh dan penjelasan pkm teknologi
Contoh dan penjelasan pkm teknologi
 

Membuat aplikasi-rental-dengan-java-dan-my sql

  • 1. 85 AKSES DATABASE MENGGUNAKAN JDBC Pada bab ini Anda akan belajar bagaimana membuat program koneksi Java dengan database Access dan MySQL. Selain itu, Anda juga akan diajarkan bagaimana membuat program sederhana dengan kedua database tersebut. 5.1 DBMS dengan MySQL Software database ini cukup familiar bagi programmer berbasis open source dan para pengembang aplikasi client-server, terutama web programming. Untuk bisa mengakses MySql dibutuhkan driver yang bisa menjembatani antara dabase ini dengan mesin java. Jika Anda belum memiliki installer-nya, kunjungi situs http://www.mysql.com atau http://dev.mysql.com/doc/mysql/en untuk mendapatkan manualnya. Dalam hal ini penulis menggunakan distribusi dari pihak ketiga/pengembang lain yang memanfaatkan database tersebut dengan bantuan program pendukung lainnya, yaitu AppServ. Program bantu ini untuk manajemen basis data MySQL dengan skrip php dan dilengkapi server Apache. Untuk mendapatkannya, Anda bisa mengunjungi alamat http://appservnetwork.com (Anda juga bisa mendapatkan file dalam
  • 2. 86 bonus CD buku ini). Program tersebut free jadi Anda tidak usah resah dengan biaya. Program tersebut juga sudah didukung dengan PhpMyAdmin sebuah end user database management yang sudah dikenal luas oleh para pengembang database server oriented/Web programming. Pastikan web server dan mysql sudah berjalan. Jika Anda menggu- nakan Windows XP, lihat dari Control Panel Administrative Tool Services sehingga muncul jendela semua servis yang sedang berjalan dalam komputer. Pastikan bahwa Apache2.2 dan mysql sudah berjalan. Gambar 5.1 Servis Apache Gambar 5.2 Servis MySQL Anda bisa menggunakan database manajemen yang lain yang berbasiskan desktop (stand alone) atau berbasis web. Untuk mela- kukan manajemen database menggunakan web base interface, lakukan bebarapa langkah berikut ini: 1. Pastikan bahwa Anda sudah memasang Database server MySQL, Webserver Apache, dan PHP, serta PHPMyAdmin dalam komputer Anda. Anda bisa mengopi dari bonus CD (folder software/appserv-win32-2.5.10.exe) kalau belum memilikinya.
  • 3. 87 2. Jalankan WebBrowser, ketikkan alamat http://localhost/phpMyAdmin. Anda juga bisa mengganti localhost dengan nama komputer Anda, sehingga muncul halaman utama. Perhatikan Gambar 5.3. 3. Buat database baru, dengan cara memasukkan namanya dalam kotak isian Create new database. Ketikkan latihan_b5, lalu klik tombol Create seperti pada Gambar 5.3. Gambar 5.3 Tampilan PhpMyAdmin 4. Jendela yang muncul selanjutnya adalah seperti Gambar 5.4, yaitu pesan pembuatan database sukses. Dan tersedia untuk memasukkan nama tabel baru dalam database tersebut. Anda bisa membuat tabelnya, dengan cara memasukkan nama tabel pada kotak isian name di panel Create new table on latihan_b5. Ketikkan mahasiswa kemudian isi jumlah kolomnya pada kotak isian Number of fields. Ketikkan 4 (pada panel yang sama), kemudian klik tombol Go. Perhatikan Gambar 5.4 dan langkah selanjutnya pada Gambar 5.5. Gambar 5.4 Membuat Table Baru
  • 4. 88 5. Pada langkah pemasukan data tabel dengan kolom-kolom yang tersedia seperti Gambar 5.5, isikan semua nama kolom pada kotak yang sudah disediakan. Jangan lupa mengisikan juga tipe data pada kolom Type dan panjangnya pada kolom Length/ Values. Setelah terisi semua, klik tombol Save. Gambar 5.5 Mengisi Kolom Tabel Baru 6. Langkah berikutnya adalah membuat kunci utama pada tabel ini dengan cara: masuk dalam struktur tabel (klik link menu Structure). Kemudian pada sebelah kanan terlihat gambar kunci, sorot pada baris no_mhs, kemudian arahkan mouse pada tombol kunci tersebut (lihat Gambar 5.6). Setelah itu program akan menampilkan pesan konfirmasi tentang pembuatan kunci tersebut. Gambar 5.6 Menambahkan Primary Key
  • 5. 89 Gambar 5.7 Konfirmasi Penambahan Kunci 7. Selanjutnya Anda perlu memasukkan beberapa data untuk latihan koneksi database dengan Java. Sekarang, klik tombol Insert pada deretan menu yang ada di sisi atas, kemudian masukkan beberapa data yang diperlukan. Gambar 5.8 Tombol-Tombol Fungsional phpMyAdmin Gambar 5.9 Pemasukan Data Baru 8. Terakhir, klik tombol Go.
  • 6. 90 5.2 Membuat Koneksi untuk MySQL Tibalah waktunya untuk membuat programnya. Buat dengan editor yang paling ringan. Sekarang jangan gunakan editor yang hight end user dulu karena yang kita buat sekarang belum membutuhkan desain yang rumit. Prinsipnya, gunakan alat yang sesuai kebutuhan agar selalu efektif dalam bekerja. Pakailah editor Gel dan lakukan langkah-langkah berikut ini: 1. Buat proyek baru, beri nama Database. 2. Tambahkan kelas baru dalam proyek tersebut, beri nama KoneksiMysql. 3. Setting library driver Mysql dalam editor Gel untuk proyek ini. Jika dalam editor Anda tidak di-setting secara global dalam Options (menu Options pada tab classpath), maka Anda harus melakukan setting setiap proyek. Untuk itu lakukan setting secara global pada Gel, dengan cara: a. Masuk dalam jendela Options. b. Masuk dalam tab Classpath. c. Tekan tombol Add File pilih file driver MySQL. Jika Anda belum memiliki, bisa mengopi dari bonus CD, silakan kopi file mysql-connector-java-5.1.6-bin.jar dalam folder com dan letakkan dalam folder latihan bab5. 4. Ketik dan sesuaikan kode program Anda seperti berikut: import java.sql.*; public class KoneksiMysql { private String host="localhost"; private String user="root"; private String password="admin"; private String db=" latihan_b5"; public KoneksiMysql() { Connection conn; Statement st; ResultSet rs; int no=0; try {
  • 7. 91 Class.forName("com.mysql.jdbc.Driver"); conn = DriverManager.getConnection( "jdbc:mysql://"+ host +"/"+ db +"?user=" +user+ "&password="+ password); st = conn.createStatement(); rs = st.executeQuery("Select * from mahasiswa"); while (rs.next()) { no=no+1; System.out.println(no + ")"); System.out.println("No Mhs :" + rs.getString("no_mhs")); System.out.println("Nama :" + rs.getString("nama")); System.out.println("Alamat :" + rs.getString(3)); System.out.println("Jurusan :" + rs.getString(4)); System.out.println("============" + "===================="); } conn.close(); } catch(Exception e) { System.out.println( "Pesan kesalahan : "+ e.getMessage()); } } public static void main(String[] args) { KoneksiMysql koneksimysql = new KoneksiMysql(); } } 5. Pastikan bahwa properti host, user, password dan db sudah disesuaikan dengan konfigurasi user MySQL dalam komputer Anda. Jika tidak, Anda dijamin gagal dalam menampilkan data dari database tersebut. private String host="localhost"; private String user="root"; private String password="admin"; private String db=" latihan_b5"; 6. Compile dan jalankan program.
  • 8. 92 Gambar 5.10 Keluaran dari KoneksiMySQL.java Properti host, user, password dan db dipakai untuk akses ke dalam database MySQL. Pada constructor KoneksiMysql terdapat kelas bertipe Connection dan Statement. Kelas tersebut dipakai untuk koneksi ke dalam database melalui query, sedangkan kelas ResultSet dipakai untuk menyimpan hasil query dalam bentuk kum- pulan data yang bisa diakses secara berurutan. Sedangkan perintah Class.forName("com.mysql.jdbc.Driver") adalah untuk me- lakukan pengenalan terhadap driver database yang digunakan, yaitu com.mysql.jdbc.Driver. Jika kelas ini tidak ditemukan dalam class path, koneksi akan gagal.
  • 9. 93 5.3 Design DB Paket Dalam buku Java yang kami terbitkan sebelumnya (Membuat Aplikasi Penjualan dengan Java dan MySQL) telah dijelaskan tentang kelas-kelas untuk mengakses dan manajemen database versi 1.0.0, termasuk pembuatannya, antara lain kelas DB, DBTable, DBQuery, DriverConnection, MyTable dan Utils. Sebenarnya dalam buku ini juga menggunakan kelas yang sudah dipakai pada buku sebelumnya, tetapi sudah di-update ke versi 2.0.0. Secara prinsip dasarnya adalah sama, sehingga tidak perlu lagi dibahas dalam buku ini. Namun, perlu penulis gambarkan peran- cangan paket ini agar lebih mudah untuk dipahami bagi pembaca, baik yang belum pernah membaca buku pertama, atau yang sudah pernah membaca buku sebelumnya. 5.3.1 DB.java Kelas ini adalah abstraksi dari objek tabel fisik dalam sebuah database. Agar kita bisa melakukan pengambilan data dan mela- kukan modifikasi terhadap data (tabel) tersebut dengan cepat dan mudah. Serta tidak mengetikkan program sama secara berulang- ulang. Seperti yang kita ketahui sebelumnya bahwa untuk mengambil data dalam tabel perlu melakukan pengenalan driver database, membuat statement, kemudian menjalankan query yang disimpan dalam sebuah recordset (himpunan record). Sehingga setiap kali kita melakukan operasi baca/tulis, sejumlah perintah program akan kita tuliskan berulang-ulang. Hal itu tidak salah, tetapi akan lebih baik jika kita membuat sebuah objek yang bisa menggantikan pekerjaan itu. Sehingga penulisan kode program akan menjadi sederhana dan mudah dalam proses pengembangannya. Inilah keuntungannya pemrograman yang bersifat modular (tersusun atas modul-modul). 5.3.2 DBTable.java Kelas ini diturunkan dari kelas DB, yang dikhususkan untuk menangani hubungan dengan sebuah tabel saja. Properti yang dimilikinya adalah tableName yang menyimpan informasi nama tabel dalam database yang akan dibaca/ditulis.
  • 10. 94 Method yang dimilikinya adalah setTableName untuk mengubah/ menentukan nama tabel dan method makeActive untuk meng- aktifkan data dalam komponen DBTable ini. Dan method init untuk memasukkan perintah SQL agar membuka satu tabel tertentu. Tentu saja selain metode di atas, komponen ini juga memiliki seluruh kemampuan nenek moyangnya, yaitu kelas DB. 5.3.3 DBQuery.java Kelas ini diturunkan dari kelas DB, yang memiliki kemampuan untuk melakukan pengambilan data melalui query dalam database (bisa membaca dari beberapa tabel sekaligus, atau hanya beberapa kolom saja dari total tertentu). Metode init digunakan untuk menentukan tipe recordset-nya menjadi readonly (tidak untuk edit), sedangkan makeActive digunakan untuk mengaktifkan data dalam komponen DBQuery. 5.3.4 DBCombo.java Kelas ini diturunkan dari kelas DBQuery, yang memiliki kemampuan untuk melakukan pengambilan data melalui query dan siap untuk meletakkan data dalam sebuah combobox. Dengan berbagai kondisi atau pilihan data untuk ditampilkan secara dinamis. 5.3.5 MyModelTable.java Komponen ini hampir sama dengan DefaultTableModel dalam paket java.swing.table, yaitu komponen yang mampu menampilkan tabular data/tabel. Karena kami memang mengembangkan dari kelas tersebut agar bisa disesuaikan dengan kebutuhan aplikasi yang kita buat. Selalu gunakan sederhana saja, yaitu: “pelajari yang sudah ditulis pengembang terdahulu, baru dikembangkan semaksimal mungkin”. Untuk pengembangan, properti yang ditambahkan antara lain readOnlyCol untuk menyimpan informasi mengenai atribut setiap kolom dalam tabel, sehingga kita bisa menentukan kolom mana yang boleh diedit atau mana yang tidak boleh diedit. Sedangkan method yang ditambahkan antara lain setReadOnlyCol untuk mengisi properti readOnlyCol.
  • 11. 95 5.3.6 MyTable Komponen ini adalah sebuah kontainer panel yang memuat kelas JscrollPanel dan JTable dengan model tabelnya adalah MyModelTable. Dengan kemampuan khusus, untuk menampilkan data dari database ke dalam bentuk tabel (tabular data) dibungkus dalam satu kelas agar memudahkan dalam pengembangan dan mengurangi kompleksitas program. 5.3.7 Utils Kelas ini digunakan untuk keperluan yang bersifat umum, independent dan sering kali digunakan, seperti halnya fungsi-fungsi standar pada Java. Contohnya fungsi-fungsi bilangan parseInt, parseDouble dan sebagainya. Di sini akan dibuat dua buah metode showMessage() untuk menampilkan pesan, dan isNumber() untuk mengetahui sebuah string tertentu berformat angka atau bukan. DB DBTable DBQuery DBCombo DriverConnection MyModelTable MyTable Utils Gambar 5.11 Desain DBPaket ooo0ooo