Koneksi Database MySQL Berbasis GUI Menggunakan Java

Koneksi Database MySQL Berbasis GUI Menggunakan Java

Sebuah aplikasi database menggunakan Java membutuhkan sebuah koneksi agar java application dan database server bisa terhubung. Kali ini kita akan membuat sebuah aplikasi koneksi…

Sebuah aplikasi database menggunakan Java membutuhkan sebuah koneksi agar java application dan database server bisa terhubung. Kali ini kita akan membuat sebuah aplikasi koneksi database berbasis GUI menggunakan bahasa pemrograman Java. Dengan aplikasi koneksi berbasis GUI, kita bisa memasukkan parameter username, password, url, dan nama database yang digunakan. Penulis menggunakan Netbeans sebagai editor Java dan MySQL sebagai database server.

 

Membuat Form GUI

Buatlah sebuah project baru bernama GUI_Connect atau terserah jika ingin menggunakan nama lain. Setelah itu buat form baru bernama gui.java dan atur formsehingga nampak seperti gambar berikut:

membuat sebuah projek baru

Membuat Sebuah Projek Baru

Jika dibutuhkan, kita bisa mengatur penamaan variabel di setiap komponen swing yang ada pada form.

Membuat class koneksi

Setelah form dibuat, kita sekarang akan membuat sebuah class untuk mengatur pembentukan koneksi dari proses login. Kita namakan class itu dengan koneksi.java kemudian buatlah kode seperti di bawah ini:

package gui_connect;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

/**
 *
 * @author didik
 */
public class koneksi {

    Connection kon;

    private final String driver = "com.mysql.jdbc.Driver";
    private String url="";
    private String username="";
    private String password="";
    int error;
    
    //method untuk melakukan koneksi ke server database
    public void logon(String url,String username,String password, String db) {
        this.url="jdbc:mysql://"+url+"/"+db;
        this.username=username;
        this.password=password;
        try {
            Class.forName(driver).newInstance();
            kon = DriverManager.getConnection(this.url, this.username, this.password);

        } catch (Exception e) {
           if(e==null){
                error=0;
           }
           else if(e!=null){
                error=1;
           }
        }
    }

    //untuk mendapatkan status error tidaknya koneksi
    public int getErrorStatus(){
        return error;
    }

    //fungsi logoff,memutus koneksi
    public void logoff() {
        try {
            kon.close();
        } catch (Exception e) {
        }
    }

    public Connection conn(){
        return kon;
    }
}

Method logon() bertugas untuk melakukan koneksi dengan database server. Di method tersebut membutuhkan 3 parameter yang tipe datanya String. Ini berarti method tersebut akan menerima parameter inputan dari form GUI yang dibuat terpisah sehingga akan lebih terasa dinamis.

Untuk mengetahui sukses tidaknya koneksi, perlu dibuat cara khusus sebagai indikator. Nah di sini saya saya membuat sebuah variabel:

int error;

Sifatnya sebagai indikator saja, saya buat jika koneksi gagal maka variabel di atas diberi nilai 1, atau jika koneksi berhasil maka error diberi nilai 0. Pemberian nilai ini berdasarkan pada kode berikut

if(e==null){
    error=0;
}
else if(e!=null){
    error=1;
}

Pesan itu akan nampak seperti gambar berikut:

berhasil login

Anda Berhasil Login

Access denied

Access denied

Agar nilai indikator tersebut bisa diambil oleh pemrosesan GUI, maka dibuat method  getErrorStatus()  yang mengembalikan nilai integer. Dan method logoff() tak lain adalah untuk menutup koneksi.

 

Membentuk objek class koneksi di form GUI

Kembali ke form GUI yang sudah Anda buat tadi. Bentuk objek baru dari class koneksi yang tadi dibuat.

koneksi konek=new koneksi();

Lalu Anda buat sebuah method connect dengan berisikan kode berikut

 //fungsi memanggil method logon yg ada di class koneksi
    void connect(String url, String username, String password, String db){
        konek.logon(url, username, password, db);
        if(konek.getErrorStatus()==0){
            JOptionPane.showMessageDialog(null, "Anda berhasil Login");
            buttonLogout.setEnabled(true);
            buttonLogin.setEnabled(false);
        }
        else if(konek.getErrorStatus()==1){
            JOptionPane.showMessageDialog(null, "Access denied!!");
        }
    }

method di atas nanti akan digunakan untuk mengakses method logon() yang ada pada class koneksi tadi. Sekarang Anda buat aksi dari button login dengan menggunakan actionPerformed dan isikan kode berikut di dalamnya:

String url=txtURL.getText();
        String username=txtUser.getText();
        String password=txtPass.getText();
        String db=txtDB.getText();
        connect(url,username,password,db);

Kode di atas digunakan untuk memasukkan inputan dari textfield yang ada ke dalam method connect di atas agar dapat diproses di class koneksi.

Nah, untuk logoff sederhana saja. Buat aksi pada tombol logout yang ada di form kemudian panggil method logoff() yang ada di class koneksi

konek.logoff();

 

Selamat berkreasi dan semoga bermanfaat.


Tag: , ,

7 Comments

Leave Comment
  1. Nikita says:

    Thanks infonya mas.. buat bantu tugas kuliah aku :3

  2. didik says:

    @nikita

    sama-sama ya, semoga bermanfaat. kalo perlu dikembangin lagi

    Tekno Muslim

  3. Barayuda says:

    Wah,, makasi sekali,,
    pass bgt mas saya lagi belajar yg ini.. :D
    ternyata bisa seperti di vb6 dulu.. :D

  4. junadi says:

    mantapp. cuman jika mau menambahkan JFrame Form lagi (selain koneksi Form GUI) …bagaimana cara memanggil koneksinya ya?

Write Comment

Your email will not be published. The marked label is required.