MEMBUAT FORM LOG IN YANG BISA MENGINPUTKAN DATA KE MYSQL || BUKAN DRAG AND DROP

MEMBUAT FORM LOG IN YANG BISA MENGINPUTKAN DATA KE MYSQL

Pada kesempatan kali ini saya membuat form log in dengan mengimplementasikan action listener dan dapat digunakan untuk memasukan data menggunakan perintah sql. Action yang dilakukan oleh tombol log in adalah ketika diinputkan email dan password maka data tersebut akan tersimpan di MYSQL dan akan muncul massage box yang tertulis  Data berhasil disimpan.

  1.  Langkah pembuatan database
Install XAMPP lalu start apache dan mysql tekan tombol admin pada bagian admin dari mysql.



Setelah itu akan muncul http://localhost/phpmyadmin/server_databases.php?server=1


Disini kita akan membuat database baru dengan cara klik new > isikan nama database dan createSaya sudah membuat satu database bernama login dan tabel database bernama login. Tabel database saya berisi 2 kolom yang bernama email dan password

2.  Kode program untuk java class LoginForm

package loginform;
import javax.swing.*;
import java.awt.event.*;
import java.awt.Color;
import java.awt.Container;
import java.awt.Font;
import javax.swing.JLabel;
import koneksi.konek;
import com.mysql.jdbc.Statement;
import javax.swing.JOptionPane;

public class LoginForm
{
// Frame
static JFrame bingkai = new JFrame();
// Label
static JLabel lblEmail = new JLabel("Email");
static JLabel lblPasswd = new JLabel("Password");
static JLabel lblLogIn = new JLabel("Log In");
static JLabel lblTbh = new JLabel("Forgot Your Password?");

//TextField dan PasswordField
static JTextField txtEmail = new JTextField();
static JPasswordField txtPasswd = new JPasswordField(20);

//JCheckBox
static JCheckBox cekbox = new JCheckBox("Remember Me");

// Button Login
static JButton btnMasuk = new JButton("Login");
static int count = 0;

//kode dibawah ini untuk membuat  frame
static void widget()
{
bingkai.setTitle("Forum Belajar");
bingkai.setSize(310,400);
bingkai.setLocationRelativeTo(null);
bingkai.setResizable(false);
bingkai.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
bingkai.setVisible(true);
bingkai.setLayout(null);
Container warna = bingkai.getContentPane();
Color orangeColor = new Color(70, 120, 180);
warna.setBackground(orangeColor);

//dibawah ini digunakan untuk menambahkan widget pada frame yang telah dibuat diatas
bingkai.add(lblEmail);
bingkai.add(lblPasswd);
bingkai.add(lblLogIn);
bingkai.add(lblTbh);

bingkai.add(txtEmail);
bingkai.add(txtPasswd);
bingkai.add(cekbox);
bingkai.add(btnMasuk);

//dibawah ini digunakan untuk mengatur letak dan font
lblEmail.setBounds(25, 70, 200, 20);
lblEmail.setFont(new Font("Calibri", Font.PLAIN, 20));
lblPasswd.setBounds(25, 130, 100, 20);
lblPasswd.setFont(new Font("Calibri", Font.PLAIN, 20));
lblLogIn.setBounds(110, 10, 150, 40);
lblLogIn.setFont(new Font("Calibri", Font.BOLD, 35));
lblTbh.setBounds(70, 280, 200, 40);
lblTbh.setFont(new Font("Calibri", Font.BOLD, 17));

txtEmail.setBounds(25, 90, 250, 30);
txtPasswd.setBounds(25, 150, 250, 30);

cekbox.setBounds(25, 200, 120, 15);
cekbox.setFont(new Font("Calibri", Font.PLAIN, 15));

btnMasuk.setBounds(25, 225, 250, 30);
btnMasuk.setFont(new Font("Calibri", Font.PLAIN, 20));
}

// metode untuk memberikan action listener yang akan memberikan aksi beripa menginputkan data ke database
static void aksi()
{
    btnMasuk.addActionListener((ActionEvent e) -> {
        String email = txtEmail.getText();
        String password = txtPasswd.getText();
       
        try {
            Statement statement = (Statement) konek.getkoneksi().createStatement();
            statement.executeUpdate("INSERT INTO login(email,password) VALUES('"+email+"','"+password+"');");
            statement.close();
            JOptionPane.showMessageDialog(null, "Data berhasil disimpan");
            // new FormLogin().show();
            // this.dispose();
        }
        catch (Exception t){
            JOptionPane.showMessageDialog(null, "data gagal disimpan");
        }
    });
}
//metode ini digunakan sebagai metode utama untuk menjalankan metode metode diatas
    public static void main(String[] args)
    {
        widget();
        aksi();
    }
}

3.   Kode program untuk java class konek yang berfungsi untuk mengkoneksikan ke database

//Mengimport library yang dibutuhkan
package koneksi;

import com.mysql.jdbc.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;


public class konek {
private static Connection koneksi;

public static Connection getkoneksi() throws SQLException {
if (koneksi == null) {
try {
String url = new String();
String email = new String();
String password = new String();
url = "jdbc:mysql://localhost:3306/login"; 
email = "root";
password = "";
DriverManager.registerDriver(new com.mysql.jdbc.Driver());
koneksi = (Connection) DriverManager.getConnection(url, email, password);
} catch (SQLException t) {
System.out.println("Error membuat koneksi");
}
}return koneksi;
}

public static Object getConnection() {
throw new UnsupportedOperationException("Not supported yet.");
}
}

4.   Hasil Akhir :
Ketika saya menginputkan email dan password maka data tersebut akan terekam di database


Komentar