Skip to main content

Implementasi Java-SQL : Form Login

Dasar implementasi yg paling gampang buat contoh koneksi java ke database digunakan untuk login dengan data berasal dari tabel di SQL Server. Syaratnya: JDK, SQL Server 2000, driver sql server.
1. Buat tabel untuk menyimpan user
- Database: dbKuliah
- Tabel: tbUser
- Field: fUser, fNama, fPass
- isikan data
2. Pilih jenis Koneksi
- Apabila memilih odbc, Buat DataSource untuk koneksi
+ Driver: SQL Server
+ Name: koneksi
+ server: .
+ Login ID: With Winndows NT auth.
+ Language: Italian
+ Connect to
- Apabila memilih driver sqlserver, install terlebih dahulu, pastikan tahu username dan password sa
download driver dari http://www.microsoft.com/downloads/details.aspx?FamilyID=9f1874b6-f8e1-4bd6-947c-0fc5bf05bf71
3. Buat Form frmLogin:
Komponen: JTextField -> tUser, JPasswordField -> tPass, JButton -> bLogin
4. Bagian Kode:
- Bagian import
import javax.swing.*;
import java.net.*;
- Variabel Global
Connection con;
Statement stmt;
String perintah;
String sqlUser="sa"; //UserName untuk administrator SQL server
String sqlPass="sa"; //Password untuk administrator SQL server
String sqlDb="dbKuliah"; //Database yang diakses
String koneksiOdbc="koneksi"; //Nama koneksi odbc
- Fungsi Tambahan
public void testDriver(){
String dbDrv1= "sun.jdbc.odbc.JdbcOdbcDriver";
String dbDrv2 = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
String dbUrl1= "jdbc:odbc:"+koneksiOdbc;
String dbUrl2 = "jdbc:microsoft:sqlserver://localhost;DatabaseName="+sqlDb;
try{
//Pilih salah satu
Class.forName(dbDrv1); //menggunakan koneksi odbc
//Class.forName(dbDrv2); //menggunakan koneksi driver mssql
//Pilih salah satu
con = DriverManager.getConnection(dbUrl1,sqlUser,sqlPass); //menggunakan koneksi odbc
//con = DriverManager.getConnection(dbUrl2,sqlUser,sqlPass); //menggunakan koneksi driver mssql
stmt=con.createStatement();
}catch(Exception ce){
System.out.println(ce.toString());
}
}
- Bagian paling bawah dari constructor
testDriver();
- Bagian event actionPerformed Tombol bLogin
try{
perintah="SELECT count(*) FROM tbUser where fUser='"+tUser.getText()+"' AND fPass='"+tPass.getText()+"' ";
ResultSet hasil=stmt.executeQuery(perintah);
hasil.next();
if(Integer.parseInt(hasil.getObject(1).toString())>=1){
JOptionPane.showMessageDialog(this,"Login Berhasil");
}else{
JOptionPane.showMessageDialog(this,"Login Gagal");
}
}catch(Exception e){System.err.println(e.getMessage());}

razz

Sorce Lengkapnya:
import javax.swing.*;
import java.sql.*;
public class frmLogin extends javax.swing.JFrame {

/** Creates new form frmLogin */
public frmLogin() {
initComponents();
testDriver();
}

/** 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.
*/
private void initComponents() {//GEN-BEGIN:initComponents
tUser = new javax.swing.JTextField();
tPass = new javax.swing.JPasswordField();
bLogin = new javax.swing.JButton();

getContentPane().setLayout(null);

addWindowListener(new java.awt.event.WindowAdapter() {
public void windowClosing(java.awt.event.WindowEvent evt) {
exitForm(evt);
}
});

getContentPane().add(tUser);
tUser.setBounds(110, 70, 80, 20);

getContentPane().add(tPass);
tPass.setBounds(110, 110, 80, 24);

bLogin.setText("Login");
bLogin.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
bLoginActionPerformed(evt);
}
});

getContentPane().add(bLogin);
bLogin.setBounds(110, 160, 59, 23);

pack();
}//GEN-END:initComponents

private void bLoginActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_bLoginActionPerformed
try{
perintah="SELECT count(*) FROM tbUser where fUser='"+tUser.getText()+"' AND fPass='"+tPass.getText()+"' ";
ResultSet hasil=stmt.executeQuery(perintah);
hasil.next();
if(Integer.parseInt(hasil.getObject(1).toString())>=1){
JOptionPane.showMessageDialog(this,"Login Berhasil");
}else{
JOptionPane.showMessageDialog(this,"Login Gagal");
}
}catch(Exception e){System.err.println(e.getMessage());}
}//GEN-LAST:event_bLoginActionPerformed

/** Exit the Application */
private void exitForm(java.awt.event.WindowEvent evt) {//GEN-FIRST:event_exitForm
System.exit(0);
}//GEN-LAST:event_exitForm

/**
* @param args the command line arguments
*/
public static void main(String args[]) {
new frmLogin().show();
}
public void testDriver(){
String dbDrv1 = "sun.jdbc.odbc.JdbcOdbcDriver";
String dbDrv2 = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
String dbUrl1 = "jdbc:odbc:"+koneksiOdbc;
String dbUrl2 = "jdbc:microsoft:sqlserver://localhost;DatabaseName="+sqlDb;
try{
//Pilih salah satu
Class.forName(dbDrv1); //menggunakan koneksi odbc
//Class.forName(dbDrv2); //menggunakan koneksi driver mssql
//Pilih salah satu
con = DriverManager.getConnection(dbUrl1,sqlUser,sqlPass); //menggunakan koneksi odbc
//con = DriverManager.getConnection(dbUrl2,sqlUser,sqlPass); //menggunakan koneksi driver mssql
stmt=con.createStatement();
}catch(Exception ce){
System.out.println(ce.toString());
}
}

// Variables declaration - do not modify//GEN-BEGIN:variables
private javax.swing.JButton bLogin;
private javax.swing.JPasswordField tPass;
private javax.swing.JTextField tUser;
// End of variables declaration//GEN-END:variables
Connection con;
Statement stmt;
String perintah;
String sqlUser="sa"; //UserName untuk administrator SQL server
String sqlPass="sa"; //Password untuk administrator SQL server
String sqlDb="dbKuliah"; //Database yang diakses
String koneksiOdbc="koneksi"; //Nama koneksi odbc
}

Comments

  1. Lah kalau Usernya banyak terus beda hak level buat nya gimana , mohon petunjuknya mas...

    ReplyDelete
  2. @ Anonim
    Hak level yang berbeda bisa dilakukan dengan pengelompokkan user. Setiap user mempunyai group, setiap group bisa diset hak aksesnya. Jadi setiap user mempunyai hak akses sesuai dengan group yang diberikan.

    ReplyDelete

Post a Comment

Popular posts from this blog

KISS: Complete Ubuntu Server Configuration

The Simplest way to install and configure our Ubuntu Server Edition. With this step-by-step manual instalation, we can configure Network, Internet, APT instalation source, XAMPP for Linux, Apache Web server, ProFtpd Ftp Server, PHP, MySql Database Server, Samba file sharing, Squid proxy server. A. Network And Internet Configuration 1. Intall Ubuntu Server Edition, I prefer using 8.04 LTS, a stable build with long time support, even better than the newer ones, in my opinion. Login as root or use this command to become root for user in sudoers list. # sudo su 2. Now, Change the hostname # pico /etc/hosts 127.0.0.1 localhost //Don't change this 192.168.1.12 hercules //Change with your ip address and hostname ::1 ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters ff02::3 ip6-allhosts 3. Make configuration for network interfaces # pico /etc/network/interfaces # This file describes the network interfaces available on your s...

Pembuatan PDF di PHP dengan FPDF dan HTML2FPDF

Untuk membuat pdf dengan menggunakan php, kita bisa menggunakan fpdf yang berbasis class. Sedangkan html2fpdf digunakan untuk mengubah html menjadi pdf. Dengan hanya menggunakan fpdf, kita harus menentukan semua hal yang mengatur tampilannya berbasis code sesuai dengan aturan dan fungsi yang disediakan class tersebut. Dengan menggunakan html2fpdf, kita cuma perlu membuat sebuah file html dan tampilannya langsung diubah menjadi sebuah file pdf, tentu dengan beberapa keterbatasan dan perubahan tampilan. Saat ini, fpdf terbaru pada versi 1.6 sedangkan html2fpdf versi 3. Instalasi: + Ekstrak file fpdf dan html2fpdf. Sebenarnya html2fpdf merupakan inheritance dari class fpdf, tapi class di fpdf yang disdertakan di paket html2fpdf telah dimodifikasi dari aslinya sesuai dengan kebutuhan konversi tersebut. Class original dari fpdf akan kita pakai untuk pembuatan pdf secara manual, bukan dari html. + Ganti nama file fpdf.php misalkan menjadi fpdf16.php. Karena untuk bebrapa versi instalasi php ...

JarMaker & j2Exe: Membuat Executable Aplikasi Java

Lupakan mitos java tidak bisa dijalankan secara langsung. Jangan percaya kalau ada yang bilang java tidak bisa dibuat menjadi aplikasi exe. Kuno kalo masih menggunakan file jar saja atau bahkan file class untuk hasil building aplikasi java. Cobalah untuk sedikit berimprovisasi membuat aplikasi java menjadi exe, hal yang tidak bisa dilakukan oleh tools yang disediakan jdk, bahkan netbeans 6 saat ini. Hasil binary compiler java berupa file class, yang dijalankan dengan perintah java namaclass. Jadi paling tidak untuk menjalankannya harus melalui command prompt, atau yang sedikit kreatif dengan membuat shortcut yang diarahkan ke java.exe dengan parameter nama class yang dipanggil, lengkap dengan pengubahan icon sesuai dengan aplikasinya. Sun sendiri mengembangkan file arsip kompresi jar, mirip dengan format zip, dengan tool yang disediakan di jdk-nya,untuk menghasilkan sebuah file yang berisi seluruh class yang dibutuhkan, sehingga dapat dilakukan pemanggilan dengan class yang pertama...