- Buka Netbeans&project yang dulu sudah dibuat, tambahkan package dan beri nama 'gui'. Package ini untuk menampung class yang menampilkan GUI.
- Tambahkan JDialog pada package GUI dan beri nama class tersebut dengan 'login', maka secara otomatis Netbeans akan me-generate sebuah JDialog. Rubah variabel name masing-masing komponen dan beri nama txtUser, txtPass, cmdOk, cmdCance, dan mess.
- Buka bagian tab Source View ketik code di bawah ini:
package gui;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.sql.*;
import javax.swing.ImageIcon;
import javax.swing.UIManager;
import database.database;
/**
* form login
* @author Thuba
*/
public class login extends javax.swing.JDialog {
database db=new database();
private Statement stmt;
private ResultSet rs;
private String dataUser,dataPass;
boolean pro=true;
/** Creates new form login */
public login(java.awt.Frame parent, boolean modal) {
super(parent, modal);
db.koneksiDBMS();
initComponents();
this.setLocationRelativeTo(this);
AddListener();
}
//method AddListener pd objek
private void AddListener(){
txtUser.addKeyListener(new KeyAdapter(){
public void keyPressed(KeyEvent e){
txtUserkeyPressed(e);
}
});
txtPass.addKeyListener(new KeyAdapter(){
public void keyPressed(KeyEvent e){
txtPasskeyPressed(e);
}
});
}
/**
* method jika txtUser dienter
* @param e
*/
private void txtUserkeyPressed(KeyEvent e){
int i=e.getKeyCode();
if(i==10){
txtPass.requestFocus();
}
}
/**
* method jika txtPass dienter
* @param e
*/
private void txtPasskeyPressed(KeyEvent e){
int i=e.getKeyCode();
if(i==10){
cek();
}
}
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.sql.*;
import javax.swing.ImageIcon;
import javax.swing.UIManager;
import database.database;
/**
* form login
* @author Thuba
*/
public class login extends javax.swing.JDialog {
database db=new database();
private Statement stmt;
private ResultSet rs;
private String dataUser,dataPass;
boolean pro=true;
/** Creates new form login */
public login(java.awt.Frame parent, boolean modal) {
super(parent, modal);
db.koneksiDBMS();
initComponents();
this.setLocationRelativeTo(this);
AddListener();
}
//method AddListener pd objek
private void AddListener(){
txtUser.addKeyListener(new KeyAdapter(){
public void keyPressed(KeyEvent e){
txtUserkeyPressed(e);
}
});
txtPass.addKeyListener(new KeyAdapter(){
public void keyPressed(KeyEvent e){
txtPasskeyPressed(e);
}
});
}
/**
* method jika txtUser dienter
* @param e
*/
private void txtUserkeyPressed(KeyEvent e){
int i=e.getKeyCode();
if(i==10){
txtPass.requestFocus();
}
}
/**
* method jika txtPass dienter
* @param e
*/
private void txtPasskeyPressed(KeyEvent e){
int i=e.getKeyCode();
if(i==10){
cek();
}
}
//method cek u/validasi user,password dan ststus
private void cek(){
String user=txtUser.getText();
String pass=txtPass.getText();
String status="user";
String status1="admin";
try{
String sql="select * from user";
Statement ps=db.con.createStatement();
rs=ps.executeQuery(sql);
while(rs.next()){
String u=rs.getString(1);
//jika username=user di DB
if(user.equals(u)){
String sql2="select * from user where user='"+u+"'";
ps=db.con.createStatement();
rs=ps.executeQuery(sql2);
while(rs.next()){
String pas=rs.getString(2);
String stat=rs.getString(3);
//jika password=password di DB dimana user=username yg diinput
if(pass.equals(pas)){
if(stat.equals("user")){
this.dispose();
JOptionPane.showMessageDialog(null,"Anda login sebagai user biasa");
} else if(stat.equals("admin")){
this.dispose();
JOptionPane.showMessageDialog(null, "Anda login sebagai Admin & berhak mengakses semua program utama");
}
} else {
mess.setFont(new java.awt.Font("Courier New", 1, 11));
mess.setText("User or Password Invalid!");
mess.setForeground(new java.awt.Color(255, 51, 102));
txtUser.requestFocus();
}
}
} else {
mess.setFont(new java.awt.Font("Courier New", 1, 11));
mess.setText("User or Password Invalid!");
mess.setForeground(new java.awt.Color(255, 51, 102));
txtUser.requestFocus();
}
}
}catch(SQLException ex){}
}
- Klik kanan pada cmdOk-->event-->Action-->actionPerformed, ketikan method cek() yang sudah dibuat
private void cmdOkActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
cek();
}
- Klik kanan pada cmdCancel-->event-->Action-->actionPerformed, ketikan method 'System.exit(0)'.
private void cmdCancelActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
System.exit(0);
}
- Klik kanan pada project-->Clean and Build, kemudian jalankan program dan login dengan user dan password sesuai yang ada di basis data
Bersambung.........