Laporan Praktikum 12 JAVA DATABASE CONNECTIVITY

DASAR TEORI
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. 

1. KOMPONEN UTAMA JAVA DATABASE CONNECTIVITY
JAVA DATABASE CONNECTIVITY memiliki beberapa komponen utama yang berhubungan dengan koneksi driver, koneksi database, eksekusi perintah SQL dan lain-lain, komponen-komponen tersebut antara lain :
a. Driver adalah komponen untuk menangani masalah komunikasi dengan database server.
b. DriverManager adalah komponen untuk menangani objek driver dengan objek DriveManager 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 di dapat 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 JAVA DATABASE CONNECTIVITY
Teknologi  JAVA DATABASE CONNECTIVITY mempunyai beberapa keunggulan dibandingkan dengan teknologi lainnya. Berikut beberapa keunggulan tersebut :
a.Mempertahankan data yang ada.
b.Menyederhanakan pembuatan aplikasi dengan kombinasi antara Java API dan JAVA DATABASE CONNECTIVITY API.
c.Tidak perlu melakukan konfigurasi pada jaringan komputer klien.
d.JAVA DATABASE CONNECTIVITY API memberi akses penuh pada metadata sehingga memungkinkan pengembangan aplikasi yang lebih canggih.
e.JAVA DATABASE CONNECTIVITY driver tidak perlu diinstal karena murni bawaan Java. 
Koneksi database menggunakan Uniform Resources Lovator (URL) yang diambil dari keunggulan standar internet.


Contoh Program Sederhana :

A.    Membuat database dengan menggunakan MySQL.
1.Simpan driver JDBC MySQL “mysql-connector-java.jar” ke dalamfolder_instalasi_java/jdk/jre/lib’ext
2. Jalankan program MySQL
3. Buatlah database dengan ketentuan sebagai berikut :

Nama Database     :  praktikum
   Nama Tabel        : mahasiswa,  terdiri dari 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)
    );







B.     Membuat database dengan menggunakan Ms.Access
a.      Jalankan program Ms.Access
b.      Buatlah database dengan ketentuan sebagai berikut :


Nama File        :   praktikum
     Nama Tabel     :   mahasiswa, terdiri dari tiga field, yaitu NIM, Nama dan Alamat
                                     yang semuanya bertipe text.






C.    Membuat menu pemasukan dan penghapusan data dari database praktikum.
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);
       }
  }

outputnya:

D.    Membuat Menu Lihat Data dari database Praktikum.
                                              
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”,””);
                       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”};
        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);
      }
 outputnya:
selesai..

Subscribe to receive free email updates:

0 Response to "Laporan Praktikum 12 JAVA DATABASE CONNECTIVITY"

Posting Komentar