- Koneksi
Database
1.1
Install XAMPP
Langkah
awal sebelum mengkoneksikan antara java dengan database mySQL adalah dengan meng-install
XAMPP yang menyediakan Apache dimana fungsinya untuk mengedit database. Selain
itu, terdapat pula mySQL yang akan digunakan untuk membuat database.
Gbr 1. XAMPP Control Panel
Setelah kita
meng-install XAMPP pastikan pada XAMPP
Control Panel yang dimana Apache dan MySQL pada posisi Start.
1.2 Membuat Database
Langkah-langkah:
a. Masuk
ke Browser (Google Chrome, Mozilla FireFox, dll)
b. Ketik
Localhost pada address bar.
c. Pilih
phpMyAdmin.
d. Klik
Database
e. Pada
kotak Create database ketikan judul database (co.: rentalcd), kemudian klik
Create
Gbr 2. Database pada MySQL
f. Masuk
ke database yang telah dibuat.
g. Pada
Create table, masukkan nama tabel yang akan digunakan dan tentukan jumlah kolom
yang akan digunakan (Co.: Tabel anggota dengan jumlah kolom 5).
Gbr 3. Pembuatan Tabel
h. Masukkan
Field name yang dibutuhkan pada tabel tersebut(lihat contoh berikut).
Gbr 4. Field pada sebuah Tabel
i.
Inputkan data melalui Insert.
1.3 Koneksi dengan Java
Sebelum menjalankan
project java yang mengakses database tersebut, perlu terlebih dahulu
menambahkan driver JDBC.
Gbr 5. Driver JDBC pada java
Langkah-langkah:
a. Klik
kanan pada Libraries.
b. Add
Library
Gbr 6. Proses menambahkan Driver
JDBC
c. Pilih
MySQL JDBC Driver kemudian klik Add
Gbr 7.Menambahkan Driver JDBC
Setelah
Driver terpasang tinggal membuat syntax untuk menghubungkan Java dengan MySQL.
Berikut syntax yang diperlukan:
package ta_javamysql_1046;
import com.mysql.jdbc.*;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
public class javaMYSQL {
private static Connection
con=null;
private
static void BuatKoneksiDatabase(){
try {
Class.forName("com.mysql.jdbc.Driver");
}
catch (java.lang.ClassNotFoundException
e){
System.err.println("Driver
Tidak ditemukan... " +e);
}
//Untuk koneksi ke MySQL
String userid =
"root";
String password =
"";
//silahkan digant url-nya,
tapi tergantung nama databasenya
//formatnya:
“jdbc:tipeDatabase://server:port/namaDatabase”
String url =
"jdbc:mysql://localhost:3306/rentalcd";
try {
con = (Connection)
DriverManager.getConnection(url, userid,password);
}catch(SQLException e) {
System.err.println("DataBase
Gak Ada, atau ID/Password gagal " + e.getMessage());
}
}
private
static void TampilkanIsitabel()
{
try{
Statement stat = (Statement)
con.createStatement();
ResultSet rSet =
stat.executeQuery("Select * from anggota ");
System.out.println("ISI
TABEL anggota :");
while (rSet.next()) {
String id
=rSet.getString("id") ;
String
nama=rSet.getString("nama");
String
alamat=rSet.getString("alamat") ;
String telp=
rSet.getString("telp") ;
String tglh=
rSet.getString("hari_lahir");
System.out.print(id+spasi(id,4)+nama+spasi(nama,10));
System.out.print(alamat+spasi(alamat,18)+telp+spasi(telp,10));
System.out.println(tglh+spasi(tglh,12));
}
stat.close();
}
catch (SQLException se) {
System.out.println("SQL salah" + se);}
catch (Exception
e){System.out.println("Pesan error " + e); }
}
private static String
spasi(String s, int n)
{int m=n-s.length(); String
sp="";
for(int
i=0;i<m;i++)sp+=" ";
return sp;
}
public static void
main(String[] args) {
BuatKoneksiDatabase();
TampilkanIsitabel();
}
}//akhir
Bila
berhasil maka hasilnya java akan membaca database yang terdapat pada MySQL.
Gbr 8. Hasil Running
- Meng-Update Data
dengan Java GUI
Gbr 9. Tampilan GUI Update Database
Langkah-langkah:
a.
Buat java Form sesuai dengan tampilan di
atas.
b.
Kemudian ketikan syntax pada tombol Simpan
TampilkanKeTabel();Koneksi();
try{
PreparedStatement stat =
(PreparedStatement) con.prepareStatement("Insert into
anggota(id,nama,alamat,telp,hari_lahir) values(?,?,?,?,?)");
try{
stat.setString(1,tfid.getText().trim());
stat.setString(2,tfnama.getText().trim() );
stat.setString(3,tfalamat.getText().trim());
stat.setString(4,tftelp.getText().trim());
stat.setString(5,tftgl.getText().trim());
bersihtf();
stat.executeUpdate();}
catch (SQLException se){
JOptionPane.showMessageDialog(null,
"Data tidak disimpan...Entry Ulang\nPesan Error : \n"+ se);
}
stat.close();
}
catch (Exception er){
System.out.println("Pesan Error =
"+ er);
}
TampilkanKeTabel();
}
c.
Berikut syntax yang terdapat pada tombol
Edit
int i = Tabel.getSelectedRow();
String id = Tabel.getValueAt(i, 0).toString();
try {
PreparedStatement stat = (PreparedStatement)
con.prepareStatement("Update anggota set nama=?,"
+
"alamat=?,telp=?,hari_lahir=? where id=?");
try {
stat.setString(1,
tfnama.getText());
stat.setString(2,
tfalamat.getText());
stat.setString(3,
tftelp.getText());
stat.setString(4,
tftgl.getText());
stat.setString(5, id);
int Confirm =
JOptionPane.showConfirmDialog(this, "Apakah Anda Yakin ingin merubah
Database ini?");
if (Confirm == 0) {
stat.executeUpdate();
}
// clear();
TampilkanKeTabel();
} catch (SQLException se) {
JOptionPane.showMessageDialog(null, "Entry Ulang\nPesan Error :
\n" + se);
tfid.setFocusable(true);
}
stat.close();
} catch (Exception er) {
System.out.println("Pesan Error = " + er);
}
}
d.
Syntax tombol Delete
Koneksi();
int i = Tabel.getSelectedRow();
String id = Tabel.getValueAt(i,
0).toString();
try {
PreparedStatement stat =
(PreparedStatement) con.prepareStatement("Delete from anggota where
id=?");
try {
stat.setString(1, id);
int Confirm =
JOptionPane.showConfirmDialog(this, "Apakah Anda Yakin ingin Menghapus
Database ini?");
if (Confirm == 0) {
stat.executeUpdate();
}
clear();bersihtf();
TampilkanKeTabel();
} catch (SQLException se) {
JOptionPane.showMessageDialog(null,
"Data tidak dapat dihapus...Cek Ulang Program\nPesan Error : \n" +
se);
tfid.setFocusable(true);
}
stat.close();
} catch (Exception er) {
System.out.println("Pesan
Error = " + er);
}
}
e.
Syntax tombol Tampil
TampilkanKeTabel();Koneksi();
f.
Syntax tombol Clear
bersihtf();
g.
Selain syntax tersebut, syntak tambahan
yang diperlukan antara lain:
d.1 Pada Tabel, agar tabel dapat
memunculkan aksi pada saat diklik:
private void
TabelMouseClicked(java.awt.event.MouseEvent evt) {
int i = Tabel.getSelectedRow();
if (i == -1) {
return;
}
String nis = Tabel.getValueAt(i,
0).toString();
tfid.setText(nis);
String nama = Tabel.getValueAt(i,
1).toString();
tfnama.setText(nama);
String jk = Tabel.getValueAt(i,
2).toString();
tfalamat.setText(jk);
String alamat = Tabel.getValueAt(i,
3).toString();
tftelp.setText(alamat);
String tgl = Tabel.getValueAt(i,
4).toString();
tftgl.setText(tgl);
}
d.2 Jangan lupa syntak private static Connection con=null; berikut posisi peletakannya:
public class javaMYSQL_1 extends javax.swing.JFrame {
private
static Connection con=null;
public javaMYSQL_1() {
initComponents();
setTitle("Anggota~1046");
}
d.3 Kemudian Method-Method
Diletakkan
setelah:
public static void main(String
args[]) {
java.awt.EventQueue.invokeLater(new
Runnable() {
public void run() {
new
javaMYSQL_1().setVisible(true);
}
});
}
private void TampilkanKeTabel(){
try{
Statement stat = (Statement)
con.createStatement();
ResultSet rSet =
stat.executeQuery("Select * from anggota ");
int brs=0;
while (rSet.next()) {
String a =rSet.getString("id") ;
String b =rSet.getString("nama");
String c
=rSet.getString("alamat");
String d =rSet.getString("telp")
;
String f =
rSet.getString("hari_lahir");
//tampilkan ke tabel
Tabel.setValueAt(rSet.getString("id"),brs,0);
Tabel.setValueAt(rSet.getString("nama"),brs,1);
Tabel.setValueAt(rSet.getString("alamat"),brs,2);
Tabel.setValueAt(rSet.getString("telp"),brs,3);
Tabel.setValueAt(rSet.getString("hari_lahir"),brs,4);
brs++;
}
stat.close();
}
catch (SQLException se) {
System.out.println("SQL salah" + se);}
catch (Exception e){System.out.println("Pesan
error " + e); }
}
private static void Koneksi(){
try {
Class.forName("com.mysql.jdbc.Driver");}
catch (java.lang.ClassNotFoundException e){
System.err.println("Driver Tidak
ditemukan... " +e);}
//Untuk koneksi ke MySQL
String userid = "root";
String password = "";
String url =
"jdbc:mysql://localhost:3306/rentalcd";
try {
con =
(Connection) DriverManager.getConnection(url, userid,password);}
catch(SQLException e) {
System.err.println("DataBase Gak Ada,
atau ID/Password gagal " + e.getMessage());}
}
private
void bersihtf()
{tfid.setText("");
tfnama.setText("");
tfalamat.setText("");
tftelp.setText("");
tftgl.setText("");}
private void clear() {
int cb = Tabel.getRowCount();
int cc = Tabel.getColumnCount();
for (int i = 0; i < cb; i++) {
for (int j = 0; j < cc; j++) {
Tabel.setValueAt(null, i, j);
}
}
}
Hasilnya
adalah:
Gbr 10. Fungsi Tombol Tampil
Gbr 11. Database MySQL
Gbr 12. Proses Edit Database pada
Java GUI
Gbr 13. Hasil Edit Database pada
Java GUI
Gbr 14. Hasil Edit Database pada
MySQL
Gbr 15. Proses Delete Database pada
Java GUI
Gbr 16. Hasil Delete Database pada
Java GUI
Gbr 17. Hasil Delete Database pada
MySQL
Gbr 18. Proses Simpan Database pada
Java GUI
Gbr 19. Hasil Simpan Database pada
Java GUI
Gbr 20. Hasil Simpan Database pada
MySQL
Sekian Terimakasih... ^_^
Semoga bermanfaat,.,.
Semoga bermanfaat,.,.


















