Ringkasan dokumen tersebut adalah:
1. Dokumen tersebut membahas konsep Model-View-Controller (MVC) dan implementasinya menggunakan Java Database Connectivity (JDBC).
2. Terdapat penjelasan tentang Model, View, dan Controller dalam MVC serta langkah-langkah implementasi MVC menggunakan database MySQL dan JDBC.
3. Diberikan contoh kode untuk membuat koneksi database dan form menggunakan MVC.
1. CAPAIAN PEMBELAJARAN :
• Mahasiswa memahami konsep
dasar MVC
• Mahasiswa memahami Model
dalam MVC
• Mahasiswa memahami View
dalam MVC
• Mahasiswa memahami Controller
dalam MVC
• Mahasiswa mampu
mengimplementasikan konsep
MVC ke dalam pemrograman JAVA
GUI menggunakan JDBC
BAB 13
MVC (MODEL-VIEW-CONTROL)
AND JDBC
MATERI PEMBELAJARAN :
1. Konsep MVC
2. Model
3. View
4. Controller
5. Implementasi MVC dan JDBC
2. 3
BAB 13 – MVC Dan JDBC
ulai dari masa awal pembuatan perangkat lunak, pengembang mencoba
memodularisasi aplikasi mereka untuk merampingkan proyek mereka dan
meningkatkan pemeliharaan perangkat lunak yang dibuat. Skema pemisahan ini
muncul di banyak proyek sehingga dipromosikanmenjadi pola desain perangkat
lunak umum, yang disebut Model-View-Controller atau disingkat MVC.
KONSEP MVC
MVC adalah pola desain perangkat lunak yang menjelaskan pemisahan perangkat
lunak menjadi tiga elemen yaitu Model – View – Controller. Dengan konsep MVC ini,
perangkat lunak seakan memiliki bagian yang terpisah dan bisa dikembangkan masing-
masing. Maka, proses pembuatan perangkat lunak bisa dilakukan lebih cepat karena
developer akan lebih fokus pada pengerjaan salah satu bagian saja. Karena dianggap efektif,
konsep MVC banyak diterapkan di berbagai framework.
Gambar 13.1. Desain arsitektur JAVA MVC
Gambar 13.1 menjelaskan alur kerja arsiterktur JAVA MVC. Model mengirimkan data
model ke Controller, atau secara opsional ke View untuk ditampilkan kepada pengguna.
Ketika data model dikirim ke Controller, data ini dapat divalidasi, dan kemudian diberikan
kembali ke komponen Model atau dikirim ke View untuk ditampilkan kepada pengguna.
M
3. 4
BAB 13 – MVC Dan JDBC
MODEL
Model merupakan class yang berisi atribut, method setter dan method getter. Class
model yang nantinya akan kita tampilkan melalui View.
VIEW
View merupakan bagian yang bertanggung jawab atas tampilan yang akan
ditampilkan untuk pengguna, baik input ataupun output.
CONTROL
Sedangkan Controller merupakan bagian yang bertanggung jawab atas action atau
operasi yang terjadi pada aplikasi Java MVC. Controller bertanggung jawab untuk
menyiapkan Model, menerima request pengguna, memperbaharui Model, dan menentukan
tampilan (View) mana yang akan ditampilkan ke pengguna.
LATIHAN 13. IMPLEMENTASI MVC DAN JDBC
Java Database Connectivity (JDBC) merupakan Application Programming Interface
(API) driver yang digunakan Java untuk melakukan koneksi dengan aplikasi lain atau dengan
berbagai macam database. JDBC memungkinkan kita untuk membuat aplikasi/program Java
yang dapat melakukan tiga hal, yaitu koneksi ke sumber data, mengirimkan query dan
statement ke database, menerima dan mengolah resultset yang diperoleh dari database.
JDBC juga memerlukan database driver untuk melakukan koneksi ke sumber data.
Driver ini bersifat spesifik untuk setiap jenis resource atau sumber data. Database driver
biasanya dibuat oleh pihak yang membuat sumber datanya, namun tidak jarang juga
komunitas atau pihak ketiga menyediakan database driver untuk sebuah sumber data
tertentu. Database driver bersifat spesifk untuk setiap jenis sumber data. Misal, Database
Driver MySql hanya bisa digunakan untuk melakukan koneksi ke database MySql, begitu juga
database driver untuk SQL Server juga hanya bisa digunakan untuk melakukan koneksi ke
database SQL Server.
Database driver untuk setiap DBMS pada umumnya dapat didownload dari website
resmi DBMS tersebut. Beberapa vendor DBMS menyebut Database driver ini dengan sebutan
4. 5
BAB 13 – MVC Dan JDBC
Java Connector (J/Connector). Database driver biasanya dibungkus dalam fle yang
berekstensi jar. Setiap database driver harus mengimplement interface java.sql.Driver.
Keunggulan JDBC:
• Mempertahankan data enterprise yang ada
• Menyederhanakan development enterprise
• Tidak memerlukan konfigurasi pada jaringan komputer.
• Akses penuh ke meta data
• Koneksi database menggunakan URL dan DataSource (yang menyediakan connection
pooling dan distributed transaction).
JDBC API tersedia dalam paket java.sql dan javax.sql, didalamnya terdiri dari kelas-kelas
antara lain:
• DriverManager: memanggil driver JDBC ke memori, dan dapat digunakan juga untuk
membuka koneksi ke sumber data
• Connection: mempresentasikan suatu koneksi dengan suatu data source, juga
digunakan untuk membuat objek Statement, PreparedStatement, dan
CallableStatement
• Statement: mempresentasikan suatu perintah SQL, dan dapat digunakan untuk
menerima objek ResultSet
• PreparedStatement: merupakan alternatif untuk objek Statement SQL yang telah
terkompilasi awal
• CallableStatement: mempresentasikan suatu stored procedure, dan dapat digunakan
untuk menjalankan stored procedures yang terkompilasi dalam suatu RDBMS yang
mendukung fasilitas tersebut
• ResultSet: mempresentasikan sebuah hasil dari database yang dihasilkan dari
statement SQL SELECT
• SQLException: suatu class exception yang membungkus kesalahan (error)
pengaksesan database.
Untuk membuat koneksi dari project Java ke database, pastikan komputer telah
terinstal database management system (DBMS) yang akan digunakan. Contoh pada bab ini
menggunakan DBMS MySQL yang dapat didownload di alamat http://www.mysql.com.
Berikut adalah langkah-langkah untuk melakukan koneksi ke database:
a. Mengaktifkan driver JDBC
Class.forName("com.mysql.jdbc.Driver");
5. 6
BAB 13 – MVC Dan JDBC
b. Membuat koneksi
Berikutnya adalah membuat koneksi yang dapat menghubungkan project Java ke
database, berikut perintahnya:
Conncection cn = DriverManager.getConnection(url, usr, pwd);
dimana:
• cn adalah variabel bertipe Connection
• url adalah informasi jenis database, host database, nama database
• usr adalah user untuk koneksi ke database
• pwd adalah password yang digunakan untuk masuk ke database
Pada Latihan 13.1. ini kita akan membuat project MVC dan sebuah database menggunakan
DBMS MySQL sehingga pada prakteknya kita akan menggunakan JDBC sebagai alat bantu
untuk menghubungkan project MVC dengan DBMS MySQL.
Langkah-Langkah Penyelesaian :
1. Buatlah sebuah database dengan nama db_katalog_namaanda
2. Buatlah tabel-tabel berikut sesuai dengan deskripsi masing-masing tabel
Nama tabel : tbl_penerbit
Gambar 13.2. Describe tbl_penerbit
6. 7
BAB 13 – MVC Dan JDBC
Nama tabel : tbl_pengarang
Gambar 13.3. Describe tbl_pengarang
Nama tabel : tbl_kategori
Gambar 13.4. Describe tbl_kategori
7. 8
BAB 13 – MVC Dan JDBC
Nama tabel : tbl_buku
Gambar 13.5. Describe tbl_buku
Nama tabel : tbl_login
Gambar 13.6. Describe tbl_login
8. 9
BAB 13 – MVC Dan JDBC
3. Sehingga tampilan schema designer dari tabel-tabel di atas akan menjadi seperti pada
gambar berikut :
Gambar 13.7. Schema Designer db_katalog
4. Langkah selanjutnya, kita akan membuat project Java menggunakan aplikasi Netbeans
IDE. Buat sebuah project Java Application dengan nama PKatalog (Simpan project di
folder Anda)
*Unchecklist “Create Main Class” agar project tidak dibuatkan class main secara otomatis.
Gambar 13.8. Jendela New Java Application
9. 10
BAB 13 – MVC Dan JDBC
5. Buat beberapa Packages pada project PKatalog dengan cara klik kanan Source Package –
New – Java Package…
Gambar 13.9. New Java Package
6. Buatlah packages-packages berikut : (SIEks merupakan nama kelas, ganti dengan
kelas Anda)
Gambar 13.10. Source Packages project PKatalog
7. Selanjutnya, kita akan membuat class pada packages Model, klik kanan packages Model
lalu buat Java Class baru dengan nama MPenerbit
8. Isi atribut untuk Penerbit berupa PenerbitID, PenerbitNama bertipe String dengan
visibility private (encapsulation)
10. 11
BAB 13 – MVC Dan JDBC
Gambar 13.11. Atribut pada Model MPenerbit
9. Buat method getter and setter dengan cari klik kanan – insert code – getter and setter
Gambar 13.12. Membuat Generate Code untuk Getter and Setter
10. Pilih semua atribut untuk dibuatkan getter and setter, lalu klik Generate
Gambar 13.13. Jendela Generate Getters and Setters
11. 12
BAB 13 – MVC Dan JDBC
11. Klik tombol Generate
Gambar 13.14. Jendela Generate Getters and Setters
12. Selanjutnya kita akan membuat VIEW. Buat sebuah JFrameForm pada packages View
dengan nama VPenerbit
13. Buat desain form seperti gambar 13.15 :
Gambar 13.15. Desain Form VPenerbit
12. 13
BAB 13 – MVC Dan JDBC
Spesifikasi komponen pada Form VPenerbit dapat dilihat pada tabel 13.1.
Tabel 13.1. Tabel Spesifikasi Komponen Form VPenerbit
Komponen Properties Nilai
JLabel1 Text ID Penerbit
JLabel2 Text Nama Penerbit
JTextfield1 Name edIDPenerbit
Text <<kosong>>
JTextfield2 Name edNamaPenerbit
Text <<kosong>>
JButton1 Name BtnBaru
Text Baru
JButton2 Name BtnEdit
Text Edit
JButton3 Name BtnHapus
Text Hapus
JButton4 Name BtnSimpan
Text Simpan
JButton5 Name BtnKeluar
Text Keluar
JTable1 Name JtblPenerbit
14. Setelah database dan form sudah kita buat, sekarang kita akan mengoneksikan form
VPenerbit dengan database db_katalog. Sebelum membuat koneksi database,
tambahkan library baru pada Libraries (klik kanan Libraries, kemudian pilih Add
Library)
Gambar 13.16. Menu Add Library
13. 14
BAB 13 – MVC Dan JDBC
15. Selanjutnya pilih library MySQL JDBC Driver, lalu klik tombol Add Library.
Gambar 13.17. Jendela Add Library
16. Klik kanan packages Connection
17. Buat Java Class baru dengan nama KoneksiDatabase
18. Sebelum mengetik coding, yang perlu diingat :
- Biasakan generate coding dengan ctrl + spasi
- Untuk beberapa code program yang nanti meminta pilihan import, berikut list
import yang dipilih atau diketik terlebih dahulu di bagian header kode program (di
atas public class …)
Gambar 13.18. Beberapa library yang harus diimport
14. 15
BAB 13 – MVC Dan JDBC
19. Ketik kode program berikut :
Gambar 13.19. Kode Program KoneksiDatabase