Assalamu’alaikum
warahmatullahi wabarakatuh,
Selamat datang di
blog saya...
Postingan kali ini saya akan membahas tugas praktikum
saya tentang Java Database Connectivity.
Untuk melihat postingan sebelumnya anda bisa klik teks link di bawah ini :
DASAR
TEORI
JDBC (Java
Database Connectivity) merupakan trademark dari Sun Microsystem yang merupakan
bagian dari teknologi Java yang
menangani pengolahan database. Java tidak membedakan cara
pemrograman database yang satu dengan yang
lainnya. Sebagai contoh : cara Java mengolah table Oracle dan MySQL sama saja,
yang berbeda hanyalah alamat URL koneksi dan driver JDBC-nya, sehingga kita
dapat membuat sebuah program yang sama
di Java untuk mengolah database yang ada di MySQL, Oracle, SQL Server dan
pemrograman database lainnya, selama nama dan struktur tabelnya sama.
1.
KOMPONEN UTAMA JDBC
JDBC memiliki
beberapa komponen utama
yang berhubungan dengan
koneksi
driver, koneksi
database, eksekusi perintah
SQL dan lain-lain
komponen-komponen tersebut antara lain adalah sebagai berikut :
a)
Driver adalah
komponen untuk menangani
masalah komunikasi dengan database server
b)
DriverManager adalah
komponen untuk menangani
objek driver dengan objek
DriverManager juga mengendalikan
detail dari proses
kerja objek driver.
c)
Connection adalah
komponen yang menangani koneksi ke database.
d)
Statement
adalah komponen yang
menangani pengiriman perintah
SQL ke database.
e)
ResultSet adalah
komponen yang menangani penyimpanan data yang didapat dari database setelah
perintah SQL dieksekusi oleh komponen Statement.
f)
SQLException adalah
komponen yang digunakan
untuk menangani
kesalahan-kesalahan (error) yang mungkin terjadi dalam pengolahan database.
2.
KEUNGGULAN TEKNOLOGI JDBC
Dalam pembuatan
database, teknologi JDBC mempunyai
beberapa
keunggulan dibandingkan dengan teknologi lainnya. Berikut beberapa
keunggulaln tersebut :
a)
Mempertahankan data
yang ada.
b)
Menyederhanakan
pembuatan aplikasi dengan kombinasi antara Java API dan JDBC API.
c)
Tidak perlu
melakukan konfigurasi pada jaringan computer klien.
d)
JDBC API
memberi akses penuh
pada metadata sehingga
memungkinkan pengembangan aplikasi yang lebih canggih.
e)
JDBC driver tidak
perlu diinstal karena murni bawaan Java
f)
Koneksi database
menggunakan Uniform
Resources Lovator (URL) yang diambil dari keunggulan standar
internet.
Berikut ini langkah-langkah program Java Database Connectivity yang akan kita buat :
A.
Membuat database dengan menggunakan MySQL
Sebelum
membuat database langkah pertama yaitu menyimpan driver JDBC
MySql “mysql-connector-java.jar” ke
dalam folder_instalasi_java/jdk/jre/lib/ext
hal ini bertujuan agar program yang kita buat dapat terkoneksi ke database
yang kita buat.
Pada program kali ini saya menggunakan Localhost phpMyAdmin. Berikut ini
database yang akan di buat dengan ketentuan sebagai berikut :
Nama
Database : praktikum
Nama
Tabel : mahasiswa, terdiridari
tiga field, yaitu NIM, Nama
dan Alamat.
Syntax :
create database praktikum;
use praktikum;
create table mahasiswa (
NIM varchar(9),
Nama varchar(30),
Alamat varchar(30)
);
|
Berikut ini database yang saya buat di localhost phpMyadmin:
B.
Membuat menu pemasukan dan penghapusan data dari database
praktikum
Setelah kita membuat database langkah berikutnya kita
membuat program java untuk menginput data ke database dan membuat fungsi
hapusnya. Karena pada program ini saya menggunakan database MySql maka kelas driver yang digunakan
yaitu org.gjt.mm.mysql.Driver dan driver manager yaitu jdbc:mysql://localhost/praktikum", "root",
"". ”praktikum”
merupakan nama database yang saya gunakan jadi kalian bisa merubahnya sesuai
dengan nama database yang kalian buat. Jika kalian menggunakan database dengan
ms.access kalian bisa mangaktifkan kode program untuk kelas ms.access dan
menonaktifkan kelas mysql.
Kode Program
import java.sql.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
class CobaDatabase {
public static void main
(String[] args) {
DBMahasiswa mahasiswa = new DBMahasiswa();
}
}
class DBMahasiswa extends JFrame
implements ActionListener {
final JLabel lNim,lNama, lAlamat;
final JTextField nim, nama, alamat;
final JButton btnSave, btnHapus;
final JPanel panel1,panel2;
public DBMahasiswa() {
setTitle("Coba
Database");
lNim = new JLabel("NIM :
");
lNama = new JLabel("NAMA
: ");
lAlamat = new JLabel("ALAMAT : ");
nim = new JTextField(20);
nama = new JTextField(20);
alamat = new JTextField(20);
btnSave = new JButton("SIMPAN");
btnSave.addActionListener(this);
btnHapus = new JButton("HAPUS");
btnHapus.addActionListener(this);
panel1 = new JPanel(new GridLayout(3,1));
panel2 = new JPanel(new GridLayout(3,1));
setLayout(new BorderLayout());
add(panel1, "West");
panel1.add(lNim);
panel1.add(lNama);
panel1.add(lAlamat);
add(panel2, "East");
panel2.add(nim);
panel2.add(nama);
panel2.add(alamat);
add(btnSave, "South");
add(btnHapus, "North");
pack();
setDefaultCloseOperation(3);
setVisible(true);
}
public void actionPerformed(ActionEvent ae) {
if(ae.getSource()==btnSave) {
String sql = "insert into mahasiswa values('"+nim.getText()+"','"+nama.getText()+"',
'"+alamat.getText()+"')";
try {
//Untuk database SQL
Class.forName("org.gjt.mm.mysql.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost/praktikum", "root", "");
//Untuk database ACCESS
/*Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con =
DriverManager.getConnection("jdbc:odbc:java", "",
"");*/
Statement stmt =con.createStatement();
stmt.executeUpdate(sql);
stmt.close();
con.close();
JOptionPane.showMessageDialog(this, "Data
berhasil disimpan", "Hasil",
JOptionPane.INFORMATION_MESSAGE);
}
catch(Exception
e) {
JOptionPane.showMessageDialog(this, e.getMessage(), "Hasil", JOptionPane.ERROR_MESSAGE);
}
}
if(ae.getSource()==btnHapus) {
int pesan = JOptionPane.showConfirmDialog(null, "Anda yakin ingin menghapus pegawai\n"+"dengan
NIM ='"+nim.getText()+"'","Konfirmasi Hapus Data", JOptionPane.OK_CANCEL_OPTION,JOptionPane.QUESTION_MESSAGE);
if(pesan == JOptionPane.OK_OPTION) {
String sql = "DELETE from mahasiswa where nim='"+nim.getText()+"'";
try {
//Untuk database SQL
Class.forName("org.gjt.mm.mysql.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost/praktikum", "root", "");
//Untuk database ACCESS
/*Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con =
DriverManager.getConnection("jdbc:odbc:java", "",
"");*/
Statement stmt = con.createStatement();
stmt.executeUpdate(sql);
stmt.close();
con.close();
JOptionPane.showMessageDialog(this, "Data berhasil dihapus", "Hasil", JOptionPane.INFORMATION_MESSAGE);
}
catch(Exception e) {
JOptionPane.showMessageDialog(this, e.getMessage(), "Hasil", JOptionPane.ERROR_MESSAGE);
}
}
}
System.exit(0);
}
}
|
Simpan dengan nama CobaDatabase.java
selanjutnya :
1.
CTRL+1
untuk mengkompile program java
2.
CTRL+2
untuk menjalankan program
Hasil Output Program
Berikut ini tampilan awal program
Berikut ini kita menginput data ke database dan ketika
kita klik simpan jika berhasil menyimpan ke database akan muncul dialog pesan
data berhasil disimpan
Selanjutnya ketika kita menghapus data kita input
terlebih dahulu data yang akan kita hapus sealnjutnya kita klik button hupus
dan akan muncul dialog pesan peringatan apakah kita akan menghapus data dengan
nim yang kita input.
Jika kita klik Ok maka akan muncul kotak dialog pesan
data berhasil dihapus.
C.
Membuat Menu Lihat Data dari database Praktikum
Program java ini ialah untuk menampilkan data yang kita
input ke database praktikum yang kita input dari program CobaDatabase.java
diatas.
Kode Program
import java.sql.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
class LihatDatabase {
public static void main
(String [] args){
LihatData data = new LihatData();
}
}
class LihatData extends JFrame{
public LihatData(){
setTitle("Lihat
Database");
String tdata[][] =new String[0][0];
try{
//Untuk
Database menggunakan SQL
Class.forName("org.gjt.mm.mysql.Driver");
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost/praktikum","root","");
//Untuk
Database menggunakan ACCESS
/*Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection conn =
DriverManager.getConnection("jdbc:odbc:java", "",
"");*/
Statement stmt = conn.createStatement();
//Sintaks
sql yang dibawa
String sql="select
* from mahasiswa";
//Hasilnya
ditampung disini
ResultSet rs = stmt.executeQuery(sql);
tdata = new String[500][3];
int p=0;
//Jika data berikutnya ada, maka...
while (rs.next()){
//kita dapatkan data dari kolom 1
tdata[p][0] = rs.getString(1);
tdata[p][1] = rs.getString(2);
tdata[p][2] = rs.getString(3);
p++;
}
//stmt
dibebaskan dari memori
stmt.close();
//koneksi
ditutup
conn.close();
}
catch (Exception exc){
JOptionPane.showMessageDialog(this,"ERROR","Hasil",JOptionPane.ERROR_MESSAGE);
}
String[] nkolom={"Nim","Nama","Alamat"};
//Membuat
tabel, dengan judul nkolom dan isi tdata
JTable tabel = new JTable(tdata,nkolom);
JScrollPane gridtabel = new JScrollPane(tabel);
tabel.setPreferredScrollableViewportSize(new Dimension(400,300));
setLayout(new FlowLayout());
add(gridtabel);
pack();
setDefaultCloseOperation(3);
setVisible(true);
}
}
|
Simpan dengan nama LihatDatabase.java
selanjutnya :
1.
CTRL+1
untuk mengkompile program java
2.
CTRL+2
untuk menjalankan program
Hasil Output Program
NB : Pada program latihan diatas karena saya menggunakan
localhost phpMyAdmin maka perlu
mengaktifkan module Apache dan MySQL di aplikasi Xampp
Sekian Tentang Materi Java Database
Connectivity
Praktikum Berorientasi Objek II
Terimakasih dan Semoga Bermanfaat
----***----
Wassalammu’alaikum
warahmatullahi wabarakatuh
Tidak ada komentar:
Posting Komentar