Halo kembali lagi di blog saya, jadi kali ini saya akan membahas tentang kelanjutan dari Optimalisasi JDBC dengan JavaBeans yaitu tadinya kita memisahkan antara yang sifatnya value dengan sturuktur JDBCnya. Sekarang kita akan memecah kembali karena khan pada dasarnya klo kita ngoding untuk bikin apalikasi tidak hanya untuk 1 tabel tapi bisa menjadi ratusan tabel bahkan ribuan table dalam 1 database, jadi disini kita bakalan membahas tentang modularisasi dengan konsep Repository.
Nah sebelum kita melanjutkan ke topik utama sebelumnya sama mau menambahkan dulu tabel untuk database yang kemarin yaitu jdbc_mysql
yang berelasi ke table mahasiswa
yaitu jurusan
. berikut adalah perintah sqlnya:
silahkan eksekusi kemudian check hasilnya maka akan menampilkan output seperti berikut:
kemudian setelah itu kita buat kelas baru dengan nama Jurusan.java
seperti berikut:
Kemudian setelah itu kita update kelas Mahasiswa.java
atau supaya tidak menggangu kelas yang sebelumnya kita buat ja kelas baru misalnya MahasiswaUpdated.java
seperti berikut:
Jadi kita hanya mengganti tipe data yang tadinya
Menjadi seperti berikut:
Ok, sekarang kit kembali ke topik tentang bagaimana cara memodularisasi JDBC dengan konsep repository. Jadi konsep ini sebenarnya adalah MVC + S yaitu Model View Controller + Service, jadi service inilah yang disebut repository. jadi kita menyediakan sebuah layanan yang dinamis dan biasanya diterpkannya menggunakan interface
. yang jadi kenapa penggunakan interface
? gak pake kelas biasanya yaitu tujuannya sederhana supaya suatu saat kita mau data tersebut di open ke RMI (Romote Method Invocation) bisa gampang tinggal implementasikan interface tersebut setelah itu kita buat implementasi klasnya.
Selanjutnya kita terapkan ke koding yang kita buat untuk kelas Mahasiswa
dan Jurusan
tapi pertama saya mau membuat yang jurusan dulu.
Getting started
Pertama anda buat dulu package dalam belajar.jdbc
dengan nama repo
jadi seperti berikut:
Kemudian buat interface
dengan nama RepositoryJurusan.java
seperti berikut:
Klik kanan di folder atau source repo kemudian New File maka akan tampil form seperti berikut:
Di menu categories pilih Java kemudian di File Type pilih Java Interface kemudian klik Next maka akan tampil form sebagai berikut:
Kemudian di Class name input RepositoryJurusan
maka hasilnya seperti berikut:
Setelah itu, kita bisa tambahkan fungsi-fungsi abstract
karena kita khan cuman menggunakan database jadi ya kurang lebih fungsi yang kita gunakan yaitu
- insert
- update
- delete
- findById
- selectAll.
Maka berikut implementasinya:
Nah jadi dalam interface RepositoryJurusan
itu, kita hanya mendefinisikan method-method kosong, kemudian kita buat package baru dengan nama belajar.jdbc.service
seperti berikut:
Kemudian didalam package tersebut anda buat kelas baru dengan nama ServiceJurusan
maka hasilnya seperti berikut:
Kemudian implements interface RepositoryJurusan
seperti berikut:
Setelah itu, ada error nih di Netbeans nya seperti berikut:
Ini karena ada method yang harus di implement oleh kelas tersebut, caranya untuk mengenerate method-method yang harus implementasikan yaitu klik lampu yang merah itu terus pilih Implement all abstract methods maka hasil generatenya seperti berikut:
Nah sekarang kita tinggal ganti dengan fungsi-fungsi yang seharunya seperti insert, update, delete, select data dari database. karena kita udah punya kita bisa copy-paste kemudian modifikasi menjadi seperti berikut:
Setelah itu kita bisa mecoba merunningnya dengan membuat kelas baru contohnya saya mau buat kelas ModularJDBC
dalam package belajar.jdbc
seperti berikut:
Kemudian tambahkan seperti berikut:
Klo di running maka hasilnya seperti berikut:
Bagaimana jadi lebih sederhana khan? OK sekarang kita buat yang satu lagi yaitu Mahasiswa
yang berelasi dengan Jurusan
. seperti berikut kodingnya:
Setelah membuat repository tahap selanjutnya membuat kelas baru dengan nama ServiceMahasiswa
seperti berikut dan jangan lupa implements interface RepositoryMahasiswa
:
Kemudian kita edit file tersebut masukin fungsi-fungsi yang telah kita buat sebelumnya kita masukin ke kelas tersebut, maka hasilnya seperti berikut:
nah sekarang kita buat kelas baru lagi untuk mengobain atau menjalankannya dengan nama ModularJDBCMahasiswa
seperti berikut:
Selanjutnya karena kita ingin menambahkan data Mahasiswa jadi kita membutuhkan juga data Jurusan, jadi kita copy-paste aja perintah berikut ke dalam file ModularJDBCMahasiswa
seperti berikut:
kemudian tambahkan lagi contohnya untuk tambah data mahasiswa dan menampilkan datanya seperti berikut:
Kalo anda jalankan maka hasilnya seperti berikut:
Sisanya silahkan anda improve sendiri seperti update mahasiswa, dan hapus data. Ok mungkin cukup dulu pembahasan tentang modularisasi JDBC. see you next post!.