Sabtu, 27 Juli 2013

Membuat Main Program dan Koneksi Database dengan Java Netbeans

Agar program yang kita buat dapat berjalan dengan baik perlu adanya koneksi program kita dengan database. Kita dapat membuat database dengan menggunakan program XAMPP yang kita koneksikan dengan menambahkan koneksi mySQL JDBC pada program Java yang akan kita buat.

Kita juga perlu membuat main program untuk menjalankan program yang telah kita buat.
caranya dengan menambahkan Java Class pada program yang akan kita buat.
Caranya :
Buka Java Netbeans add Java Class dan beri nama main


Pada class main, buat source code sebagai berikut :


Pada main ini program utama yang dipanggil adalah Form Login. Anda bisa menggantikan dengan form lain atau menggantikan dengan Form Menu Utama program anda.

Membuat koneksi program java anda dengan database :
Add Java Class dari program anda dan beri nama database dan buat source code sebagai berikut :


Untuk dapat menjalankan database, anda harus menambahkan conector mySQL JDBC pada library program Java anda dan membuat database. Database dapat anda buat dengan menggunakan Program XAMPP atau program pembuat database lainnya.

Semoga ini dapat memberi manfaat bagi anda...

Jumat, 26 Juli 2013

Membuat Form Karyawan 2

Sambungan source code Form Karyawan

 private void prosesdeleteData(String id_karyawan) {
 try { query = "delete from karyawan where id_karyawan='" + id_karyawan + "'";
PreparedStatement presttmt = db.koneksi.prepareStatement(query);
 presttmt.executeUpdate(query);
}catch (SQLException se) {
JOptionPane.showMessageDialog(null, "Terjadi kesalahan hapus data! error :"+ se, "Kesalahan", JOptionPane.ERROR_MESSAGE);
System.exit(0); }
}

 /** Creates new form FormKaryawan
*/

 public FormKaryawan() {
initComponents();
db = new Database();
db.koneksiDatabase();
 isikanTabel();
bersihText();
 }

 /** 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.
*/ @SuppressWarnings("unchecked")

private void btnAddActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
tambahBaru(); aktifText(true);
aktifSimpan(true);
 modeOperasi = "INSERT";
}

private void btnEditActionPerformed(java.awt.event.ActionEvent evt) {
 // TODO add your handling code here:
aktifText(true);
 aktifSimpan(true);
 txtIdKaryawan.setEnabled(false);
 modeOperasi = "UPDATE";
 }

private void btnBatalActionPerformed(java.awt.event.ActionEvent evt) {
 // TODO add your handling code here:
tampilkanDiText();
aktifSimpan(false);
aktifText(false);
modeOperasi = "";
}

private void btnExitActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
 dispose();
}

private void btnSimpanActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
String id_karyawan = txtIdKaryawan.getText();
if (id_karyawan.equals(""))
{ JOptionPane.showMessageDialog(null, "Nama User tidak boleh kosong", "Kesalahan",JOptionPane.INFORMATION_MESSAGE);
txtIdKaryawan.requestFocus();
return; }
String nama = txtNama.getText();
String password = txtPassword.getText();
 if (nama.equals("")){
 JOptionPane.showMessageDialog(null, "Nama tidak boleh kosong", "Kesalahan",JOptionPane.INFORMATION_MESSAGE);
txtNama.requestFocus();
 return; }
if (password.equals("")) {
JOptionPane.showMessageDialog(null, "Password tidak boleh kosong", "Kesalahan", JOptionPane.INFORMATION_MESSAGE);
 txtPassword.requestFocus();
return; }
String alamat = txtAlamat.getText();
String notelp = txtNotelp.getText();
 String level = "user";
if (rbUser.isSelected() == true) {
level = "user";
} else { level = "admin"; }

if (modeOperasi.equalsIgnoreCase("INSERT")) {
prosesinsertData(id_karyawan, nama, alamat, notelp, level, password); JOptionPane.showMessageDialog(null, "Data Karyawan bernama " + txtNama.getText() +
" berhasil disimpan", "Informasi", JOptionPane.INFORMATION_MESSAGE);
} else { prosesupdateData(id_karyawan, nama, alamat, notelp, level, password); JOptionPane.showMessageDialog(null, "Data karyawan bernama " + txtNama.getText()
+ " berhasil diupdate", "Informasi", JOptionPane.INFORMATION_MESSAGE);
} isikanTabel();
}

private void btnHapusActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
if (JOptionPane.showConfirmDialog(null, "Apakah anda ingin menghapus data bernama " + txtNama.getText() + " ini?", "Pertanyaan", JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE) == JOptionPane.YES_OPTION) {
String id_karyawan = txtIdKaryawan.getText().toString();
 try { query = "SELECT * FROM olahdata where nama_user='" + id_karyawan + "'";
st = db.koneksi.createStatement();
rs = st.executeQuery(query);
if (rs.next()) { JOptionPane.showMessageDialog(null, "Data karyawan bernama " + txtNama.getText() + " masih dipakai", "Informasi",
JOptionPane.INFORMATION_MESSAGE);
} else { prosesdeleteData(id_karyawan);
 JOptionPane.showMessageDialog(null, "Data karyawan bernama " + txtNama.getText()
+ " berhasil dihapus", "Informasi", JOptionPane.INFORMATION_MESSAGE);
 isikanTabel(); }
} catch (Exception DBException) {
System.err.println("Error ="+ DBException); } }
}

private void btnNextActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
int brsSkrg, brsAkhir;
brsSkrg = tbKaryawan.getSelectedRow();
brsAkhir = tbKaryawan.getRowCount() -1;
if (brsSkrg < brsAkhir) {
kursor = brsSkrg + 1;
} else { kursor = brsAkhir;
} tbKaryawan.setRowSelectionInterval(kursor, kursor);
tampilkanDiText();
}

private void btnPrevActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
int brsSkrg;
brsSkrg = tbKaryawan.getSelectedRow();
if (brsSkrg > 0) {
kursor = brsSkrg - 1;
} else { kursor = 0;
} tbKaryawan.setRowSelectionInterval(kursor, kursor);
tampilkanDiText();
}

private void btnFirstActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
kursor = 0;
tbKaryawan.setRowSelectionInterval(kursor, kursor);
tampilkanDiText();
}

private void btnLastActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
kursor = tbKaryawan.getRowCount() - 1;
tbKaryawan.setRowSelectionInterval(kursor, kursor);
tampilkanDiText();
}

private void tbKaryawanMouseClicked(java.awt.event.MouseEvent evt) {
// TODO add your handling code here:
tampilkanDiText();
}

Semoga berguna bagi anda semua...!

Membuat Form Karyawan dengan Java Netbeans

Untuk membuat form karyawan, kita perlu membuat data karyawan pada database.
Contohnya :
 create table karyawan (
nama_user char(8) not null primary key,
nama varchar(30) not null,
alamat varchar(30),
 notelp varchar(12),
level varchar(5) not null,
password varchar(10) not null )

Untuk membuat database bisa menggunakan mySQL JDBC pada netbeans dengan mengkoneksikan program XAMPP.


Berikut ini, source code form Karyawan pada Java Netbean :
/* * To change this template, choose Tools | Templates * and open the template in the editor.

*/ /* * FormKaryawan.java * *
Created on Apr 28, 2013, 1:26:51 PM

*/ package DataRental;
import Rental.koneksi.Database;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement; import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;


 /** * * @author ALIENWARE
 */

public class FormKaryawan extends javax.swing.JInternalFrame {
 private Database db;
 private ResultSet rs;
private Statement st;
String query = "";
 DefaultTableModel dtModel;
String modeOperasi = "";
int kursor = 0;

 private void isikanTabel() {
String[] tblHeader = {"User", "Nama", "Alamat", "NoTelp", "Level", "Password"};
dtModel = new DefaultTableModel (null, tblHeader);
 kosongkanTabel();
 try { query = "select * from karyawan";
 st = db.koneksi.createStatement();
 rs = st.executeQuery(query);
while (rs.next()) { String[] tbData = {rs.getString("nama_user"), rs.getString("nama"), rs.getString("alamat"), rs.getString("notelp"), rs.getString("level"), rs.getString("password")}; dtModel.addRow(tbData); } }
catch (SQLException se) {
 se.printStackTrace(); System.exit(0); }
 tbKaryawan.setModel(dtModel);
 if (tbKaryawan.getRowCount() > 0) {
tbKaryawan.addRowSelectionInterval(0, 0);
 tampilkanDiText(); }
}

 private void kosongkanTabel(){
int row = dtModel.getRowCount();
 for (int i = 0; i < row; i++) {
dtModel.removeRow(0); }
 }

 private void bersihText() {
txtIdKaryawan.setText("");
txtNama.setText("");
 txtAlamat.setText("");
txtNotelp.setText("");
 txtPassword.setText("");
rbUser.setSelected(true);
 }

private void aktifText(boolean aktif) {
 txtIdKaryawan.setEnabled(aktif);
 txtNama.setEnabled(aktif);
 txtAlamat.setEnabled(aktif);
 txtNotelp.setEnabled(aktif);
txtPassword.setEnabled(aktif);
}

private void aktifSimpan(boolean aktif) {
 btnSimpan.setEnabled(aktif);
 btnEdit.setEnabled(!aktif);
btnBatal.setEnabled(aktif);
btnHapus.setEnabled(!aktif);
}

private void tampilkanDiText() {
 int baris = tbKaryawan.getSelectedRow();
 txtIdKaryawan.setText(dtModel.getValueAt(baris, 0).toString()); txtNama.setText(dtModel.getValueAt(baris, 1).toString()); txtAlamat.setText(dtModel.getValueAt(baris, 2).toString()); txtNotelp.setText(dtModel.getValueAt(baris, 3).toString());
String level = dtModel.getValueAt(baris, 4).toString();
 if (level.equals("user")) {
 rbUser.setSelected(true); }
else { rbAdmin.setSelected(true);
 }
txtPassword.setText(dtModel.getValueAt(baris, 5).toString());
 lblDataKe.setText("data ke : " + (kursor + 1) + " / " + tbKaryawan.getRowCount());
 aktifText(false); aktifSimpan(false);
 }

private void tambahBaru() {
txtIdKaryawan.requestFocus();
bersihText();
}

private void prosesinsertData(String id_karyawan, String nama, String alamat, String notelp, String level, String password) {
try { query = "insert into karyawan values('" + id_karyawan + "','" + nama + "','" + alamat + "','" + notelp + "','" + level + "','" + password + "')";
PreparedStatement presttmt = db.koneksi.prepareStatement(query);
 presttmt.executeUpdate(query);
 }catch (SQLException se) {
JOptionPane.showMessageDialog(null, "Terjadi kesalahan input data! error :"+ se, "Kesalahan", JOptionPane.ERROR_MESSAGE);
System.exit(0); }
 }

private void prosesupdateData(String id_karyawan, String nama, String alamat, String notelp, String level, String password) {
 try { query = "update karyawan set nama='"+nama+"',alamat='"+ alamat +"',notelp='"+notelp+"',level='"+level+"',password='"+ password+"' where id_karyawan='"+id_karyawan+"'";
PreparedStatement presttmt = db.koneksi.prepareStatement(query);
presttmt.executeUpdate(query);
}catch (SQLException se) {
 JOptionPane.showMessageDialog(null, "Terjadi kesalahan update data! error :"+ se, "Kesalahan", JOptionPane.ERROR_MESSAGE); System.exit(0); }
}

Lanjut ke Form Karyawan 2