Blogroll

Kamis, 11 Juni 2015

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 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:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
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:
1
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
1
2
3
4
5
6
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.
1
koneksi konek=new koneksi();
Lalu Anda buat sebuah method connect dengan berisikan kode berikut
1
2
3
4
5
6
7
8
9
10
11
12
//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:
1
2
3
4
5
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
1
konek.logoff();

Selamat berkreasi dan semoga bermanfaat.

0 komentar:

Posting Komentar