MEMBUAT APLIKAIS BERBASIS DATABASES MYSQL
Buatlah sebuah DATABASE untuk penyimpanan data-data mahasiswa
Nama Databases : mahasiswa
Nama Table 1 : user
Nama Table 2 : datamhs
Setelah membuat DATABASE-nya, buatlah sebuah Project Mahasiswa_Databases yang mempunyai dua jendela form yaitu Form Login dengan Form Master_Mahasiswa. Tapi sebelum kita mengisi source codingnya kita terlebih dahulu menambahkan atau add MySQL JDBC Driver di Library. Fungsinya untuk mengkonesikan NetBeans IDE ke MySQL. Caranya yaitu sebagai berikut :
1. Klik kanan pada Libraries
2. Pilih add library
3. Pilih MySQL JDBC Driver
4. Klik add Library
Selanjutnya kita buat sebuah class yang fungsinya untuk mengkonesikan databases ke netbeans IDE-nya
Caranya yaitu :
- Klik Kanan pada Project Mahasiswa_Databases>>New>>Java Class
- Class Name : KoneksiDatabases
Package : mahasiswa_databases
- Klik Finish
Pada class KoneksiDatabases isikan source code dibawah ini
package mahasiswa_databases;
import java.*;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
/**
*
* @author RUSIA
*/
public class KoneksiDatabase {
Connection Con;
Statement Stm;
ResultSet Rslt;
String url = "jdbc:mysql://localhost:3306/mahasiswa";
String user = "root";
String password = "yulius";
public KoneksiDatabase()
{
try {
Class.forName("com.mysql.jdbc.Driver");
Con = DriverManager.getConnection(url, user, password);
System.out.println("Koneksi berhasil.......!!!!!");
}
catch(ClassNotFoundException e){
System.out.println("Driver tidak ditemukan.....!!!");
}
catch (Exception e)
{
System.out.println(e);
}
}
}
Langkah selanjutnya membuat sebuah jendela form login ( jframe form ) dengan nama Login.
Sebelum kita membuat membuat source code pada masing-masing Event, kita terlebih dahulu mengimporkan class KoneksiDatabase tadi supaya bisa terkoneksi ke DATABASES caranya yaitu sebagia berikut :
Ketik kan source code ini KoneksiDatabase koneksi = new KoneksiDatabase(); dibawah public class Login hingga menjadi
/**
*
* @author RUSIA
*/
public class Login extends javax.swing.JFrame {
KoneksiDatabase koneksi = new KoneksiDatabase();
/** Creates new form Login */
Selanjutnya membuat source code pada masing-masing Event
Untuk Event – OK—
private void BtnOKActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
try{
String Nama = txtName.getText();
String password = new String(PassFieldPassword.getPassword());
koneksi.Stm = koneksi.Con.createStatement();
koneksi.Rslt = koneksi.Stm.executeQuery("select * from user where Nama = '"+Nama+"'"+"and password ='"+password+"'");
int baris= 0;
while (koneksi.Rslt.next()){
baris = koneksi.Rslt.getRow();
}
if (baris==1)
{
new Master_Mahasiswa().setVisible(true);
this.dispose();
}
else
{
JOptionPane.showMessageDialog(null,"Maaf...!! Nama dan Password tidak cocok..!!");
}
}
catch (Exception e){
JOptionPane.showMessageDialog(null, e);
}
}
Untuk Event – Exit—
private void BtnExitActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
System.exit(0);
}
Untuk Event –JpasswordFild—
Ini tinggal di copy paste saja dari Event OK
private void PassFieldPasswordActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
try{
String Nama = txtName.getText();
String password = new String(PassFieldPassword.getPassword());
koneksi.Stm = koneksi.Con.createStatement();
koneksi.Rslt = koneksi.Stm.executeQuery("select * from user where Nama = '"+Nama+"'"+"and password ='"+password+"'");
int baris= 0;
while (koneksi.Rslt.next()){
baris = koneksi.Rslt.getRow();
}
if (baris==1)
{
new Master_Mahasiswa().setVisible(true);
this.dispose();
}
else
{
JOptionPane.showMessageDialog(null,"Maaf...!! Nama dan Password tidak cocok..!!");
}
}
catch (Exception e){
JOptionPane.showMessageDialog(null, e);
}
}
Selanjutnya membuat jendela form Master_Mahasiswa yang desainya sebagai berikut :
Setelah selesai mendesain jendela formnya, ketiklah secara manual source code dibawah ini pada COURCE-nya
package mahasiswa_databases;
import java.awt.Color;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;
/**
*
* @author RUSIA
*/
public class Master_Mahasiswa extends javax.swing.JFrame {
KoneksiDatabase koneksi = new KoneksiDatabase();
private Object [][] DataTabel = null;
private String [] Header = {"Npm","Nama","Semester","Jurusan","Jenis_Kelamin","Alamat","Telp"};
/** Creates new form Master_Mahasiswa */
public Master_Mahasiswa() {
initComponents();
BacaData ();
ClearText ();
SetButton (true);
}
//ini untuk menampilkan data yang ada didatabases ke table
private void BacaData()
{
try {
koneksi.Stm = koneksi.Conn.createStatement();
koneksi.RstSet = koneksi.Stm.executeQuery("select * from datamhs order by Npm");
ResultSetMetaData meta = koneksi.RstSet.getMetaData();
int colm = meta.getColumnCount();
int baris = 0;
while (koneksi.RstSet.next())
{
baris = koneksi.RstSet.getRow();
}
DataTabel = new Object[baris][colm];
int x = 0;
koneksi.RstSet.beforeFirst();
while (koneksi.RstSet.next())
{
DataTabel[x][0] = koneksi.RstSet.getString("Npm");
DataTabel[x][1] = koneksi.RstSet.getString("Nama");
DataTabel[x][2] = koneksi.RstSet.getString("Semester");
DataTabel[x][3] = koneksi.RstSet.getString("Jurusan");
DataTabel[x][4] = koneksi.RstSet.getString("Jenis_Kelamin");
DataTabel[x][5] = koneksi.RstSet.getString("Alamat");
DataTabel[x][6] = koneksi.RstSet.getString("Telp");
x++;
}
Tabel_Mahasiswa.setModel(new DefaultTableModel(DataTabel, Header));
}
catch (SQLException e)
{
JOptionPane.showMessageDialog(null, "Tidak bisa dibaca...!");
}
}
//ini untuk menghapus textnya
private void ClearText()
{
txtNpm.setText("");
txtNama.setText("");
txtSemester.setText("");
txtAlamat.setText("");
txtTelp.setText("");
ComJurusan.setSelectedIndex(0);
if (RdioLaki.isSelected())
{
RdioLaki.setSelected(false);
}
else
{
RdioPerempuan.setSelected(false);
}
}
//ini untuk mengEnablekan tombol bila tidak diperlukan
private void SetButton(boolean tr)
{
BtnSave.setEnabled(tr);
BtnExit.setEnabled(tr);
BtnDelete.setEnabled(!tr);
BtnUpdate.setEnabled(!tr);
}
//ini untuk menset data yang ada ditabel ke text field saat table dikelik
private void SetField ()
{
int row = Tabel_Mahasiswa.getSelectedRow();
txtNpm.setText((String)Tabel_Mahasiswa.getValueAt(row, 0));
txtNama.setText((String)Tabel_Mahasiswa.getValueAt(row, 1));
txtSemester.setText((String)Tabel_Mahasiswa.getValueAt(row, 2));
ComJurusan.setSelectedItem((String)Tabel_Mahasiswa.getValueAt(row, 3));
txtAlamat.setText((String)Tabel_Mahasiswa.getValueAt(row, 5));
txtTelp.setText((String)Tabel_Mahasiswa.getValueAt(row, 6));
}
//ini untuk menyimpan data ke databases
private void SAVE()
{
String strNpm = txtNpm.getText();
String strNama = txtNama.getText();
String strSemester = txtSemester.getText();
String strJurusan = (String)ComJurusan.getSelectedItem();
String strAlamat = txtAlamat.getText();
String strTelp = txtTelp.getText();
String strJnsKelamin = "";
if (RdioLaki.isSelected())
{
strJnsKelamin = "Laki-laki";
}
else
{
strJnsKelamin = "Perempuan";
}
try
{
String SQL = "Insert into datamhs (Npm,Nama,Semester,Jurusan,Jenis_Kelamin,Alamat,Telp) values "+" ('"+strNpm+"','"+strNama+"','"+strSemester+"','"+strJurusan+"','"+strJnsKelamin+"','"+strAlamat+"','"+strTelp+"')";
koneksi.Stm.executeUpdate(SQL);
koneksi.Stm.close();
JOptionPane.showMessageDialog(null,"Data berhasil disimpan..!!");
ClearText();
BacaData();
}
catch(SQLException e)
{
JOptionPane.showMessageDialog(null,e);
}
}
//ini untik mengupdate data yang ada ditable
private void Update()
{
String strNpm = txtNpm.getText();
String strNama = txtNama.getText();
String strSemester = txtSemester.getText();
String strJurusan = (String)ComJurusan.getSelectedItem();
String strAlamat = txtAlamat.getText();
String strTelp = txtTelp.getText();
String strJnsKelamin = "";
if (RdioLaki.isSelected())
{
strJnsKelamin = "Laki-laki";
}
else
{
strJnsKelamin = "Perempuan";
}
try
{
String pesan = "yakin ingin update data ini..?";
int baris = JOptionPane.showConfirmDialog(null, pesan,"Komfirmasi Update Data",JOptionPane.YES_NO_OPTION);
if (baris ==0)
{
String sql ="Update datamhs set Nama ='"+strNama+"',Semester ='"+strSemester+"',"+"Jurusan ='"+strJurusan+"',Jenis_Kelamin ='"+strJnsKelamin+"',Alamat ='"+strAlamat+"',Telp ='"+strTelp+"' where Npm = '"+strNpm+"'";
koneksi.Stm.executeUpdate(sql);
koneksi.Stm.close();
JOptionPane.showMessageDialog(null, "Update data berhasil....");
ClearText();
BacaData();
SetButton(true);
}
ClearText();
SetButton(true);
}
catch (SQLException e)
{
JOptionPane.showMessageDialog(null,e);
}
}
//ini untuk menghapus data yang ada ditable
private void Delete()
{
String strNpm = txtNpm.getText();
try
{
String message = "Yakin ingin menghapus data ini";
int baris = JOptionPane.showConfirmDialog(null, message,"Konfrimasi Hapus Data",JOptionPane.YES_NO_OPTION);
if (baris==0)
{
String sql = "Delete from datamhs where Npm = "+strNpm+"";
koneksi.Stm.executeUpdate(sql);
koneksi.Stm.close();
JOptionPane.showMessageDialog(null,"hapus data berhasil");
ClearText();
BacaData();
SetButton(true);
}
ClearText();
SetButton(true);
}
catch (SQLException e)
{
JOptionPane.showMessageDialog(null, e);
}
}
/** This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
*/
Langkah selanjutnya membuat source code pada masing-masing Event Button
Event ---SAVE---
private void BtnSaveActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
try{
String Npm = txtNpm.getText();
String Nama = txtNama.getText();
String Semester = txtSemester.getText();
String Alamat = txtAlamat.getText();
String Telp = txtTelp.getText();
koneksi.Stm = koneksi.Conn.createStatement();
koneksi.RstSet = koneksi.Stm.executeQuery("select * from datamhs where Npm = '"+Npm+"'");
int baris= 0;
while (koneksi.RstSet.next()){
baris = koneksi.RstSet.getRow();
}
if (baris==1)
{
JOptionPane.showMessageDialog(null,"Maaf...!! Npm ini sudah terdaftar...");
}
else
SAVE();
}
catch (Exception e){
JOptionPane.showMessageDialog(null, e);
}
}
Event ---DELETE---
private void BtnDeleteActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
Delete();
}
Event ---UPDATE---
private void BtnUpdateActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:\
Update();
}
Event ---EXIT---
private void BtnExitActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
new Login().setVisible(true);
this.dispose();
}
Event ---REFRESH---
private void BtnRefreshActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
ClearText();
SetButton(true);
}
Event ---Tabel_Mahasiswa---
Caranya : Klik kanan pada table>>Event>>Mouse>>Mouse Cliked
private void Tabel_MahasiswaMouseClicked(java.awt.event.MouseEvent evt) {
// TODO add your handling code here:
SetField();
SetButton(false);
}
Semoga bermanfa’at …………
Salam Sukses buat pencinta NETBEANS IDE
CopyRight 20-12-2010 Yulius Asan
0 komentar:
Posting Komentar