JDBC (JAVA DATABASE CONNECTIVITY)
JDBC merupakan trademark dari Sun Microsystem yang merupakan bagian dari teknologi java yang menangani pengolahan database.
I. KOMPONEN UTAMA JDBC
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 setalah
perintah SQL dieksekusi oleh komponen Statement.
f. SQLException adalah komponen yang digunakan untuk menangani kesalahan-kesalahan yang
mungkin terjadi dalam pengolahan database.
II. KEUNGGULAN TEKNOLOGI JDBC
. 1. Untuk mempertahankan data yang ada.
2. Untuk menyederhanakan pembuatan aplikasi dengan kombinasi antara Java API dan JDBC API.
3. Tidak perlu melakukan konfigurasi pada jaringan computer klien.
4. JDBC API member akses penuh pada metadata sehingga memungkinkan pengembangan aplikasi yang lebih canggih.
5. JDBC driver tidak perlu diinstal karena murni bawaan Java.
LANGKAH-LANGKAH PRAKTIKUM :
Membuat database dengan menggunakan Ms.Access
Jalankan dengan program Ms.Access
Buat database:
Nama file : praktikum
Nama table : mahasiswa, Yang terdiri dari 3 field : NIM, Nama, Alamat yang bertipe text.
Membuat Menu pemasukan dan penghapusan data dari database
import java.sql.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
class CobaDatabase{
public static void main(String[]args){
praktikum mahasiswa = new praktikum();
}
}
class praktikum extends JFrame implements ActionListener{
final JLabel lNIM,lNama,lAlamat;
final JTextField NIM,Nama,Alamat;
final JButton btnSave,btnHapus;
final JPanel panel1,panel2;
public praktikum(){
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 databse ACCESS
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con = DriverManager.getConnection("jdbc:odbc:program","","");
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 ACCESS
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con=DriverManager.getConnection("jdbc:odbc:coba","","");
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);
}
}
OUTPUT
Program Menu lihat data Dari databaase 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 Acces
Class.forName ("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con = DriverManager.getConnection ("jdbc:odbc:program", "", "");
Statement stmt = con.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 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
con.close();
}
catch (Exception exc){
JOptionPane.showMessageDialog (this,"ERROR","Hasil",JOptionPane.ERROR_MESSAGE);
}
String[] nkolom={"Nim","Nama","Alamat"};
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);
}
}
OUTPUT
Tidak ada komentar:
Posting Komentar