Anda di halaman 1dari 24

PRAKTIKUM REKAYASA PERANGKAT LUNAK 2

MANUAL BOOK
Aplikasi CRUD Data Mahasiswa Menggunakan Netbeans
Nama Anggota :
1. Aditya Nur Rahman (52419019)
2. Muhammad Daffa Mulia (54419078)
3. Muhammad Hilman Akbar (54419214)
Kelas : 4IA06
Fakultas : Teknologi Industri
Jurusan : Informatika
PJ : Ilham Safari

Ditulis Guna Melengkapi Sebagian Syarat Praktikum Pemrograman Web


Jenjang S1

Universitas Gunadarma
2023
BAB I
PENDAHULUAN

1.1 Latar Belakang


Pada zaman yang sudah berkembang seperti saat ini, teknologi informasi pun ikut
berkembang pesat. Sehingga teknologi Informasi pun memiliki dampak yang sangat
berpengaruh bagi manusia. Salah satu dampak yang terasa adalah dalam bidang
pendidikan.
Perkembangan Teknologi Informasi walaupun bisa dibilang sudah sangat
berkembang tetapi masih belum merata. Pada bidang pendidikan contohnya masih
banyak pekerjaan yang dilakukan secara manual, contohnya adalah penginputan data
mahasiswa.

1.2 Tujuan
Dalam Penulisan ini Penulis memiliki tujuan untuk mempermudah dalam proses
penginputan data mahasiswa, yang awalnya dilakukan secara manual maka dibuat
komputerisasi untuk mempermudahnya.
Diharapkan aplikasi ini dapat berguna untuk kampus yang belum melakukan
komputerisasi dalam penginputan data mahasiswa.
BAB II
PEMBAHASAN

2.1 NetBeans
NetBeans merupakan sebuah aplikasi Integrated Development Environment (IDE)
yang berbasiskan Java dari Sun Microsystems dan berjalan di swing. Swing sendiri
merupakan sebuah teknologi yang terdapat pada Java dan berfungsi untuk melakukan
pengembangan terhadap aplikasi desktop yang bisa berjalan pada berbagai macam
platform seperti windows, linux, Mac OS X dan Solaris.

Netbeans juga digunakan programmer untuk melakukan banyak tugas seperti


menulis, meng-compile, mencari kesalahan dan menyebarkan program netbeans yang
ditulis dalam bahasa pemrograman Java. Selain itu, Netbeans mendukung bahasa
pemrograman lainnya. Program ini juga bisa digunakan untuk membuat professional
desktop, enterprise, web, and mobile applications dengan Java language, C/C++. Dan
bisa juga untuk Dynamic Languages seperti PHP, JavaScript, Groovy, dan Ruby.

NetBeans juga merupakan sebuah proyek kode terbuka yang di dirikan padan
bulan Juni tahun 2000 oleh Sun Microsystem dan sukses dengan pengguna yang sangat
luas, komunitas yang terus tumbuh, dan memiliki hampir 100 mitra. Pada saat ini pun
netbeans memiliki 2 produk yaitu Platform Netbeans dan Netbeans IDE.

2.2 Spring
Framework Spring adalah framework open source berbasis Java yang
menyediakan infrastrukur yang komprehensif dalam mengembangkan aplikasi Java
dengan mudah dan cepat. Spring pertama kali ditulis dan dirilis oleh Rod Johnson dengan
lisensi Apache 2.0 pada bulan Juni 2003. Spring akan membantu pembaca dalam
pengembangan aplikasi dengan build yang sederhana, portable, cepat dan sistem berbasis
JVM yang fleksibel.

2.3 Hibernate
Hibernate adalah Framework untuk Object Relation Mapping (ORM) yang mana
pada hibernate memetakan objek-objek kedalam database. Object Relational Mapping
merupakan teknik pemrograman yang memetakan sebuah objek dengan database. ORM
merupakan ‘jembatan’ penghubung antara objek yang dibuat dalam program dengan
database sehingga dalam implementasinya tidak perlu lagi menggunakan query SQL
dalam memanipulasi data di database karena objek yang dibuat dimapping sehingga
ORM yang akan mengeksekusi ke dalam database.
2.3.1.1 Fungsi Hibernate
Fitur dan kegunaan utama Hibernate adalah untuk melakukan pemetaan tabel
database dan tipe data SQL dari class-class pada Java.
Khusus untuk pemetaan Java ke tabel database, proses ini berlangsung dengan
implementasi Anotasi Java dan konfigurasi file XML. Canggihnya lagi, Hibernate adalah
framework yang bisa memelihara skema database hanya dengan memakai file XML.
Namun kebanyakan developer memilih melakukan pemetaan Java di Hibernate dengan
memakai anotasi karena dinilai lebih ringkas ketimbang XML.
Selain itu, Hibernate juga bisa menjalankan tugas-tugas CRUD lainnya, seperti
mengambil dan meminta data, menyediakan template untuk operasi data (update, insert,
delete, select), dan melakukan ORM (object relational mapping). Berbeda pula dengan
framework lain, Hibernate adalah framework yang tidak memerlukan compile ulang serta
hanya melakukan sedikit konfigurasi. Konfigurasi yang dilakukan pada Hibernate adalah
pada driver class dan dialect database saja.

2.3.1.2 Manfaat Hibernate


Manfaat hibernate adalah untuk memudahkan programmer dalam melakukan
pemetaan table database dan tipe SQL dari class pada java.

2.3.1.3 Kerugian Hibernate


Hibernate menggunakan memori yang lebih besar.

2.4 ORM (Object Relational Mapping)


ORM (Object Relational Mapping) adalah metode pemrograman yang digunakan
untuk mengkonversi data dari lingkungan bahasa pemrograman berorientasi objek (OOP)
dengan lingkungan database relasional. Seperti kita ketahui dalam aplikasi enterprise
kedua lingkungan tersebut berada pada sistem yang berbeda, yaitu OOP berada pada sisi
pemrograman aplikasi, sedangkan database relasional berada pada sisi sistem database.
Misi utama dari ORM ini adalah menjembatani kedua sistem yang berbeda dalam
membuat aplikasi android tersebut.

2.5 CRUD (Create, Read, Update, Delete)


Pengertian CRUD adalah kepanjangan dari Create, Read, Update dan Delete.
Keempat istilah ini merupakan perintah atau query yang digunakan programmer untuk
melakukan aksi melalui database relasional.
Umumnya fungsi tersebut diimplementasikan pada aplikasi pengelola basis data, seperti
Oracle, MySQL, SQL Server dan lain sebagainya.
CRUD adalah metode yang dapat dihubungkan dengan tampilan antarmuka
(interface) sebagai fasilitator untuk melakukan perubahan data atau tampilan informasi
berbentuk formulir, tabel atau laporan. Bentuk ini nantinya akan ditampilkan dalam
browser atau aplikasi pada perangkat komputer pengguna.
BAB III
ANALISA DAN PERANCANGAN

Project yang akan dibuat yaitu bertema CRUD Data Mahasiswa, dengan anggota
kelompok Aditya Nur Rahman, Muhammad Daffa Mulia, Muhammad Hilman Akbar. Bisa
dilihat pada gambar dibawah ini adalah langkah awal yang dimana kita harus membuka dulu
xampp dan men start action Apache dan MySQL.

Lalu, buka localhost phpMyAdmin dan create database bernama data_mahasiswa.


Langkah selanjutnya adalah membuat table dalam database tadi dengan isian npm, nama,
jenis_kelamin dan alamat. Dan mengisikan Type seperti pada gambar dibawah ini. Tidak lupa
menjadikan npm sebagai PRIMARY dengan cara klik centang pada kolom antara comment dan
null index seperti dibawah ini.

Lalu pada table jenis kelamin diisikan pilihan laki laki dan perempuan, seperti dibawah
ini.

Langkah selanjutnya, kita membuka netbeans (disini penulis menggunakan netbeans 8.2).
lalu memilih new project dan memilih java > Java Application > Next.
Lalu, menuliskan nama project dengan Latihan_Crud, dan memilih lokasi penyimpanan
projek sesuai yang kita inginkan, jika sudah lalu klik Finish.

Selanjutnya akan masuk ke menu folder project dan klik kanan pada folder liblary lalu
pilih Add Library.
Lalu akan terbuka menu Add Library dan pilih MySQL JDBC Driver lalu klik Add
Library.

Selanjutnya memasukan java package, caranya dengan mengklik pada folder source
package seperti dibawah ini.
Selanjutnya memberikan nama pada package dengan crud lalu klik Finish.

Lalu membuat java class pada crud yg tadi dibuat seperti pada gambar dibawah ini.

Lalu namailah dengan koneksi seperti dibawah ini.


Selanjutnya buatlah JFrame Form dengan nama view seperti dibawah ini.

Jika sudah selesai lalu ketikanlah kodingan dibawah ini untuk membuat koneksi ke
MySQL.
Selanjutnya membuat design pada view.java seperti dibawah ini.

Jika langkah diatas sudah dilakukan, maka selanjutnya adalah mengisikan logika program
untuk view.java dengan mengklik Source. Kodingannya seperti dibawah ini.
package crud;

import java.sql.ResultSet;
import java.sql.Statement;
import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;

public class View extends javax.swing.JFrame {


public View() {
initComponents();
table();
}

public void table() {


DefaultTableModel tbl = new DefaultTableModel();
tbl.addColumn("NPM");
tbl.addColumn("Nama");
tbl.addColumn("Jenis Kelamin");
tbl.addColumn("Alamat");

try {
Statement st = (Statement) Koneksi.getConnection().createStatement();
ResultSet rs = st.executeQuery("SELECT * FROM tb_mahasiswa");

while(rs.next()){
tbl.addRow(new Object[] {
rs.getString("npm"),
rs.getString("nama"),
rs.getString("jenis_kelamin"),
rs.getString("alamat")
});
jTable1.setModel (tbl);
}
JOptionPane.showMessageDialog(null, "Koneksi Database Berhasil");
} catch (Exception e) {
JOptionPane.showMessageDialog(null, "Koneksi Database Gagal" + e.getMessage());
        }
    }

Jika sudah, selanjutnya kita save project kita dan akan muncul message “Koneksi
Database Berhasil” jika hasilnya gagal berarti masih terdapat kesalahan dalam pembuatannya,
pembaca dapat mengkoreksi lagi dibagian mana yang salahnya. Message yang muncul akan
tampil seperti ini.

Selanjutnya adalah dengan melakukan koding pada bagian view.java. Kodingan dibawah
ini adalah untuk menyimpan data mahasiswa atau bisa dibilang SAVE.
private void jButton1MouseClicked(java.awt.event.MouseEvent evt) {

String jk = null;

if(rLaki.isSelected()){
jk = "Laki-Laki";
} else if(rPerempuan.isSelected()){
jk = "Perempuan";
}

try {
String sql = "INSERT INTO tb_mahasiswa VALUES ('" + tNPM.getText() + "','"
+ tNama.getText() + "','" + jk + "','" + tAlamat.getText() + "')";
Connection con = (Connection) Koneksi.getConnection();
PreparedStatement pst = con.prepareStatement(sql);
pst.execute();

JOptionPane.showMessageDialog(null, "Berhasil Menyimpan");


} catch (Exception e) {
JOptionPane.showMessageDialog(null, "Gagal Menyimpan" + e.getMessage());
        }
    }
Jika sudah, lalu save program dan lakukan run, maka hasilnya akan menampilkan seperti
dibawah ini.
Jika sudah maka bisa dilihat pada phpMyAdmin data yang diinput sudah tersimpan.

Selanjutnya, ketiklah kodingan dibawah ini untuk button tampil.


private void jButton2MouseClicked(java.awt.event.MouseEvent evt) {
// TODO add your handling code here:
try {
String sql = "SELECT * FROM tb_mahasiswa WHERE npm ='" + tNPM.getText() + "'";
Connection con = (Connection) Koneksi.getConnection();
PreparedStatement pst = con.prepareStatement(sql);
pst.execute();
} catch (Exception e) {
JOptionPane.showMessageDialog(null, e.getMessage());
}
table();
  hapus();
    }
Lalu di save dan jalankan program, cara mengeceknya adalah dengan menginput terlebih
dahulu data mahasiswanya jika sudah berhasil lalu klik tampil dan data yang baru ditambahkan
akan muncul pada kolom dibawah.

Selanjutnya adalah mengisikan kodingan untuk button edit. Kodingannya sama seperti
dibawah ini.
private void jButton3MouseClicked(java.awt.event.MouseEvent evt) {
// TODO add your handling code here:
String jk = null;

if(rLaki.isSelected()){
jk = "Laki-Laki";
} else if(rPerempuan.isSelected()){
jk = "Perempuan";
}

try {
String sql = "UPDATE tb_mahasiswa SET npm='" + tNPM.getText() + "',nama ='" +
tNama.getText()
+ "',jenis_kelamin ='" + jk + "', alamat ='" + tAlamat.getText() + "' WHERE npm='"
+ tNPM.getText() + "'";
Connection con = (Connection) Koneksi.getConnection();
PreparedStatement pst = con.prepareStatement(sql);
pst.execute();
JOptionPane.showMessageDialog(null, "Berhasil Edit");
} catch (Exception e) {
}
}

private void jTable1MouseClicked(java.awt.event.MouseEvent evt) {


// TODO add your handling code here:
int baris = jTable1.rowAtPoint(evt.getPoint());
String npm = jTable1.getValueAt(baris, 0).toString();
tNPM.setText(npm);
String nama = jTable1.getValueAt(baris, 1).toString();
tNama.setText(nama);
String alamat = jTable1.getValueAt(baris, 3).toString();
tAlamat.setText(alamat);
        
    }

Lalu jika sudah di save kodingannya lalu run dan coba. Jika berhasil maka tampilannya
akan seperti dibawah ini.
Selanjutnya adalah dengan mengisikan kodingan tombol hapus. Kodingannya seprti
dibawah ini.
private void jButton4MouseClicked(java.awt.event.MouseEvent evt) {
// TODO add your handling code here:
try {
String sql = "DELETE FROM tb_mahasiswa WHERE npm='" + tNPM.getText() + "'";
Connection con = (Connection) Koneksi.getConnection();
PreparedStatement pst = con.prepareStatement(sql);
pst.execute();
JOptionPane.showMessageDialog(null, "Berhasil Hapus");
} catch (Exception e) {
        }
    }
Jika sudah berhasil maka akan muncul tampilan seperti dibawah dan data yang dipilih
akan terhapus.

Selanjutnya gantilan kodingan view.jawa pada awal kodingan program dengan kodingan
seperti dibawah ini.
package crud;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;
import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;

public class View extends javax.swing.JFrame {


public View() {
initComponents();
table();
}

void cari(){
DefaultTableModel tbl = new DefaultTableModel();
tbl.addColumn("NPM");
tbl.addColumn("Nama");
tbl.addColumn("Jenis Kelamin");
tbl.addColumn("Alamat");

try {
String sql = "SELECT * FROM tb_mahasiswa WHERE npm LIKE '%" + tCari.getText()
+ "%'";
Connection con = (Connection) Koneksi.getConnection();
Statement st = con.createStatement();
ResultSet rs = st.executeQuery(sql);

while(rs.next()){
tbl.addRow(new Object[] {
rs.getString("npm"),
rs.getString("nama"),
rs.getString("jenis_kelamin"),
rs.getString("alamat")
});
jTable1.setModel (tbl);
}
} catch (Exception e) {
}
}

void hapus(){
tNPM.setText("");
tNama.setText("");
tAlamat.setText("");
    }

Lalu tambahkan kodingan dibawah ini pada button cari.


private void jButton5MouseClicked(java.awt.event.MouseEvent evt) {
// TODO add your handling code here:
   cari();
    }
Maka hasilnya akan seperti dibawah ini.
BAB IV
PENUTUP

4.1 Kesimpulan
Dengan adanya praktikum ini kami sebagai mahasiswa yang diajar mendapatkan
ilmu yang dapat diaplikasikan dan dikembangkan untuk lebih baik lagi.

4.2 Saran
Saran dari kami adalah agar pengajar dapat lebih tepat waktu lagi dalam
pemberian tugas dan lebih jelas lagi dalam memberikan penjelasan.

Anda mungkin juga menyukai