CRUD Java

Praktikum kali ini mengenai CRUD di java dengan menggunakan database mysql, kelanjutan dari praktikum sebelumnya mengenai data mahasiswa. praktikum ini akan membuat coding dengan konsep CRUD (Create Read Update Delete) dari data mahasiswa yang sudah dibuat…

1.buat dulu pilihan menu pada codingan

try {
int pilihan = Integer.parseInt(input.readLine());

switch (pilihan) {
case 0:
System.exit(0);
break;
case 1:
insertdatamahasiswa();
break;
case 2:
showdatamahasiswa();
break;
case 3:
updatedatamahasiswa();
break;
case 4:
deletedatamahasiswa();
break;
default:
System.out.println(“Silahkan Pilih Menu yang Tersedia….”);

}
} catch (Exception e) {
e.printStackTrace();
}

2. kemudian buat function yang ada pada menu yaitu: insertdatamahasiswa,showdatamahasiswa,updatedatamahasiswa,dan deletedatamahasiswa.

3. masing-masing mempunyai fungsi sesuai kegunaannya dengan terkoneksi ke database

  • static void showdatamahasiswa()

fungsi untuk menampilkan data mahasiswa. untuk syntak databasenya:

String sql = “SELECT * FROM data_mahasiswa”;

  •  static void insertdatamahasiswa()

Fungsi untuk menambahkan data mahasiswa untuk disimpan di database. untuk syntak databasenya:

// query insert data mahasiswa
String sql = “INSERT INTO data_mahasiswa (npm, nama,alamat,telpon) VALUE(‘%s’, ‘%s’,’%s’,’%s’)”;
sql = String.format(sql, npm, nama,alamat,telpon);

  •  static void updatedatamahasiswa()

fungsi untuk mengubah data mahasiswa namun data yang diubah hanya alamat dan telpon

// query update
String sql = “UPDATE data_mahasiswa SET alamat=’%s’, telpon=’%s’ WHERE id=%d”;
sql = String.format(sql, alamat, telpon, id);

  •    static void deletedatamahasiswa()

fungsi untuk menghapus data sesuai dengan id yang dipilih

String sql = String.format(“DELETE FROM data_mahasiswa WHERE id=%d”, id);

adapun code lebih detilnya dapat dilihat dibawah ini.

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package data.trpl;

/**
 *
 * @author Riki Afriansyah
 */
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.sql.DriverManager;
import java.sql.Connection;
import java.sql.Statement;
import java.sql.ResultSet;
public class DataTrpl {

    /**
     * @param args the command line arguments
     */
     // variabel koneksi JDBC
    static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";
    static final String DB_URL = "jdbc:mysql://localhost/trpl";
    static final String USER = "root";
    static final String PASS = "";
    
      // Menyiapkan objek yang diperlukan untuk mengelola database
    static Connection conn;
    static Statement stmt;
    static ResultSet rs;
    static InputStreamReader inputStreamReader = new InputStreamReader(System.in);
    static BufferedReader input = new BufferedReader(inputStreamReader);
    
    public static void main(String[] args) {
        // TODO code application logic here
             // Melakukan koneksi ke database
        // harus dibungkus dalam blok try/catch
        try {
            // register driver yang akan dipakai
            Class.forName(JDBC_DRIVER);
            
            // buat koneksi ke database
            conn = DriverManager.getConnection(DB_URL, USER, PASS);
            
            // buat objek statement
            stmt = conn.createStatement();
            while (!conn.isClosed()) {
                showMenu();
            }

            stmt.close();
            conn.close();

        } catch (Exception e) {
            e.printStackTrace();
        }
    }
    
      static void showMenu() {
        System.out.println("\n====Silahkan Pilih Menu====");
        System.out.println("1. Tambah Data Mahasiswa");
        System.out.println("2. Tampilkan Data Mahasiswa");
        System.out.println("3. Edit Data Mahasiswa");
        System.out.println("4. Delete Data Mahasiswa");
        System.out.println("0. Keluar");
        System.out.println("");
        System.out.print("Pilih >>> ");

        try {
            int pilihan = Integer.parseInt(input.readLine());

            switch (pilihan) {
                case 0:
                    System.exit(0);
                    break;
                case 1:
                    insertdatamahasiswa();
                    break;
                case 2:
                    showdatamahasiswa();
                    break;
                case 3:
                    updatedatamahasiswa();
                    break;
                case 4:
                    deletedatamahasiswa();
                    break;
                default:
                    System.out.println("Silahkan Pilih Menu yang Tersedia....");

            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    static void showdatamahasiswa() {
        String sql = "SELECT * FROM data_mahasiswa";

        try {
            rs = stmt.executeQuery(sql);
            
            System.out.println("==============================");
            System.out.println("|    DATA MAHASISWA/I TRPL   |");
            System.out.println("==============================");

            while (rs.next()) {
                int id = rs.getInt("id");
                String nama = rs.getString("nama");
                String npm = rs.getString("npm");
                String alamat = rs.getString("alamat");
                String telpon = rs.getString("telpon");
                
                System.out.println(String.format("%d. %s -- (%s) -- %s -- %s", id, nama, npm,alamat,telpon));
            }

        } catch (Exception e) {
            e.printStackTrace();
        }

    }

    static void insertdatamahasiswa() {
        try {
            // ambil input dari user
            System.out.print("NPM: ");
            String npm = input.readLine().trim();
            System.out.print("Nama: ");
            String nama = input.readLine().trim();
            System.out.print("Alamat: ");
            String alamat = input.readLine().trim();
            System.out.print("Telpon: ");
            String telpon = input.readLine().trim();
 
            // query insert data mahasiswa
            String sql = "INSERT INTO data_mahasiswa (npm, nama,alamat,telpon) VALUE('%s', '%s','%s','%s')";
            sql = String.format(sql, npm, nama,alamat,telpon);

            // simpan data mahasiswa
            stmt.execute(sql);
            
        } catch (Exception e) {
            e.printStackTrace();
        }

    }

    static void updatedatamahasiswa() {
        try {
            
            // ambil input dari user
            System.out.print("ID yang mau diedit: ");
            int id = Integer.parseInt(input.readLine());
            System.out.print("Alamat: ");
            String alamat = input.readLine().trim();
            System.out.print("Telpon: ");
            String telpon = input.readLine().trim();

            // query update
            String sql = "UPDATE data_mahasiswa SET alamat='%s', telpon='%s' WHERE id=%d";
            sql = String.format(sql, alamat, telpon, id);

            // update data mahasiswa trpl
            stmt.execute(sql);
            
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    static void deletedatamahasiswa() {
        try {
            
            // ambil input dari user
            System.out.print("ID yang mau dihapus: ");
            int id = Integer.parseInt(input.readLine());
            
            // buat query delete
            String sql = String.format("DELETE FROM data_mahasiswa WHERE id=%d", id);

            // hapus data
            stmt.execute(sql);
            
            System.out.println("Data telah terhapus...");
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
    
}