Anda di halaman 1dari 18

1.

Akan dirancang sebuah system informasi perpustakaan


2. Buat database dengan nama database
database_perpustakaan
3. Buat beberapa tabel dari database tersebut sebagai berikut :
Tabel : biodata_mahasiswa

Tabel: agama

Tabel : program_studi
Tabel : provinsi

Tabel : kategori_buku

Tabel : Anggota_perpustakaan

Tabel : Peminjaman_buku
Tabel : buku

Rancangan Relasi Tabel :


 Buatlah project dengan nama NamaAnda_STB_ProjectSisfo

1. Buatlah satu kelas dengan nama Koneksi.java untuk konfigurasi akses ke


database

package
Komang_192001_ProjectSisfo;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class Koneksi { private


Connection koneksiDatabase; public
Connection getKoneksiDatabase(){
if(koneksiDatabase == null){
try {
Class.forName("com.mysql.jdbc.Driver");
System.out.println("Driver Ditemukan");
try {
koneksiDatabase =
DriverManager.getConnection("jdbc:mysql://localhost/database_perp
u stakaan","root", "1234");
System.out.println("Koneksi Database Ditemukan");
} catch (SQLException ex) {
System.out.println("Koneksi Database Tidak Ditemukan :
\nDengan Pesan :" + ex.toString());
}
} catch (ClassNotFoundException ex) {
System.out.print("Class Driver Database Tidak
Ditemukan : \n Dengan pesan Error " + ex.toString());

} }
return
koneksiDatabase; }

}
package Komang_192001_ProjectSisfo;
import java.sql.Connection; import
java.sql.PreparedStatement; import
java.sql.ResultSet; import
java.sql.SQLException; import
java.sql.Statement; import
java.text.SimpleDateFormat; import
javax.swing.JOptionPane; import
javax.swing.JTable; import
javax.swing.table.DefaultTableModel;
import javax.swing.table.TableColumn;

public class FormInputBiodataMahasiswa extends javax.swing.JFrame {

Koneksi Konek = new Koneksi();


private Connection Con;
Statement Stm;
ResultSet Rs;
String Sql;
DefaultTableModel Dtm;

public FormInputBiodataMahasiswa() {
initComponents();
KosongkanObjek();
TampilDataMhsPadaTabel();
LoadDataProdi();
LoadDataAgama();
LoadDataKelamin();
LoadDataProvinsi();
LoadTahunMasuk();

}
void KosongkanObjek(){
jTextField1.setText("");
jTextField2.setText("");
jTextField3.setText("");
jTextField4.setText("");
jTextField5.setText("");
jTextField6.setText("");
jTextField7.setText("");
jTextField8.setText("");
jTextField9.setText("");
jTextField10.setText("");
jTextField11.setText("");
jTextField12.setText("");
jTextField13.setText("");
jTextField14.setText("");
jTextField15.setText("");
jTextField16.setText("");
jTextField17.setText("");

jTextField1.requestFocus();

}
private void
LoadDataProdi(){
String kd=""; try{
Con=Konek.getKoneksiDatabase();
Stm = Con.createStatement();
Sql = "select * from program_studi";
Rs=Stm.executeQuery(Sql);
while(Rs.next()) {
jComboBox1.addItem(Rs.getString("kode_jurusan"));
}
} catch(SQLException e){
System.out.println("Koneksi Gagal"+e.toString());
}

}
private void LoadDataKelamin(){
jComboBox3.addItem("L");
jComboBox3.addItem("P");

}
private void LoadTahunMasuk(){
jComboBox5.addItem("2019");
jComboBox5.addItem("2020");
jComboBox5.addItem("2021");
jComboBox5.addItem("2022");
jComboBox5.addItem("2023");
}
private void AturJTable(JTable Lihat, int Lebar[]){
try{

Lihat.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
int banyak = Lihat.getColumnCount(); for (int
i = 0; i < banyak; i++) {
TableColumn Kolom = Lihat.getColumnModel().getColumn(i);
Kolom.setPreferredWidth(Lebar[i]);
Lihat.setRowHeight(20);
}
} catch (Exception e) {
JOptionPane.showMessageDialog(null, "salah"+e);

} }
private void TampilModelJTabel(){
try {
String[]kolom={"Stambuk","Nama Mahasiswa","Program Studi",
"Agama","Tempat Lahir","Tgl Lahir","Jenis Kelamin","Alamat","Kota",
"Provinsi","Kode Pos", "Telepon","Hanphone","Hobi","Wali","Alamat Wali",
"Telepon Wali","Tahun Masuk"};
Dtm = new DefaultTableModel(null, kolom){
@Override
public boolean isCellEditable(int rowIndex, int columnIndex) {
return false;
}
};

jTable4.setModel(Dtm);
AturJTable(jTable4, new int
[]{100,300,300,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90} );
} catch (Exception e) {
JOptionPane.showMessageDialog(null, "salah"+e);
}

}
void TampilDataMhsPadaTabel(){
try {
Con=Konek.getKoneksiDatabase();
Stm =
Con.createStatement();
TampilModelJTabel(); try{
Sql = "SELECT biodata_mahasiswa.nim ,biodata_mahasiswa.nama AS
NamaMahasiswa, "+
"program_studi.nama AS ProgramStudi, "+
"agama.nama AS NamaAgama, "+
"biodata_mahasiswa.tempat_lahir AS TempatLahir, "+
"biodata_mahasiswa.tanggal_lahir AS TanggalLahir, "+
"biodata_mahasiswa.jenis_kelamin AS JenisKelamin, "+
"biodata_mahasiswa.alamat AS Alamat, "+
"biodata_mahasiswa.kota AS Kota, "+
"propinsi.nama AS NamaProvinsi, "+
"biodata_mahasiswa.kode_pos AS KodePos, "+
"biodata_mahasiswa.telpon AS Telpon, "+
"biodata_mahasiswa.handphone AS HandPhone, "+
"biodata_mahasiswa.hobi AS Hobi, "+
"biodata_mahasiswa.wali AS Wali, "+
"biodata_mahasiswa.alamat_wali AS AlamatWali, "+
"biodata_mahasiswa.telpon_wali AS TelponWali, "+
"biodata_mahasiswa.tahun_masuk AS TahunMasuk "+
" FROM "+
" biodata_mahasiswa "+
" LEFT OUTER JOIN program_studi
ON(biodata_mahasiswa.kode_program_studi=program_studi.kode_jurusan)"+
" LEFT OUTER JOIN agama
ON(biodata_mahasiswa.kode_agama=agama.kode)"+
" LEFT OUTER JOIN propinsi
ON(biodata_mahasiswa.kode_propinsi=propinsi.kode)"
; Rs = Stm.executeQuery(Sql);
while(Rs.next()){
Dtm.addRow(new Object[]{
Rs.getString("nim"),
Rs.getString("NamaMahasiswa"),
Rs.getString("ProgramStudi"),
Rs.getString("NamaAgama"),
Rs.getString("TempatLahir"),
Rs.getString("TanggalLahir"),
Rs.getString("JenisKelamin"),
Rs.getString("Alamat"),
Rs.getString("Kota"),
Rs.getString("NamaProvinsi"),
Rs.getString("KodePos"),
Rs.getString("Telpon"),
Rs.getString("Handphone"),
Rs.getString("Hobi"),
Rs.getString("Wali"),
Rs.getString("AlamatWali"),
Rs.getString("TelponWali"),
Rs.getString("TahunMasuk"),

});
jTable4.setModel(Dtm);
}
}catch(Exception e){
System.out.println("Ada Kesalahan " + e.toString());
}
}catch (SQLException e){
System.out.println("koneksi gagal " + e.toString());
}

}
void CariDataMhs(){
try {
Con=Konek.getKoneksiDatabase();
Stm =
Con.createStatement();
TampilModelJTabel(); try{

Sql = "SELECT biodata_mahasiswa.nim ,biodata_mahasiswa.nama AS


NamaMahasiswa, "+
"program_studi.nama AS ProgramStudi, "+
"agama.nama AS NamaAgama, "+
"biodata_mahasiswa.tempat_lahir AS TempatLahir, "+
"biodata_mahasiswa.tanggal_lahir AS TanggalLahir, "+
"biodata_mahasiswa.jenis_kelamin AS JenisKelamin, "+
"biodata_mahasiswa.alamat AS Alamat, "+
"biodata_mahasiswa.kota AS Kota, "+
"propinsi.nama AS NamaProvinsi, "+
"biodata_mahasiswa.kode_pos AS KodePos, "+
"biodata_mahasiswa.telpon AS Telpon, "+
"biodata_mahasiswa.handphone AS HandPhone, "+
"biodata_mahasiswa.hobi AS Hobi, "+
"biodata_mahasiswa.wali AS Wali, "+
"biodata_mahasiswa.alamat_wali AS AlamatWali, "+
"biodata_mahasiswa.telpon_wali AS TelponWali, "+
"biodata_mahasiswa.tahun_masuk AS TahunMasuk "+
" FROM "+
" biodata_mahasiswa "+
" LEFT OUTER JOIN program_studi
ON(biodata_mahasiswa.kode_program_studi=program_studi.kode_jurusan)"+
" LEFT OUTER JOIN agama
ON(biodata_mahasiswa.kode_agama=agama.kode)"+
" LEFT OUTER JOIN propinsi
ON(biodata_mahasiswa.kode_propinsi=propinsi.kode) "+
" where biodata_mahasiswa."+jComboBox6.getSelectedItem()+"
LIKE '%"+jTextField17.getText()+"%' ";

System.out.println(jComboBox6.getSelectedItem());
Rs = Stm.executeQuery(Sql); while(Rs.next()){
Dtm.addRow(new Object[]{
Rs.getString("nim"),
Rs.getString("NamaMahasiswa"),
Rs.getString("ProgramStudi"),
Rs.getString("NamaAgama"),
Rs.getString("TempatLahir"),
Rs.getString("TanggalLahir"),
Rs.getString("JenisKelamin"),
Rs.getString("Alamat"),
Rs.getString("Kota"),
Rs.getString("NamaProvinsi"),
Rs.getString("KodePos"),
Rs.getString("Telpon"),
Rs.getString("Handphone"),
Rs.getString("Hobi"),
Rs.getString("Wali"),
Rs.getString("AlamatWali"),
Rs.getString("TelponWali"),
Rs.getString("TahunMasuk"),

});
jTable4.setModel(Dtm);
}
}catch(Exception e){
System.out.println("Ada Kesalahan " + e.toString());
}
}catch (SQLException e){
System.out.println("koneksi gagal " + e.toString());
}

}
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
String Tampilan="yyyy-MM-dd";
SimpleDateFormat Fm = new SimpleDateFormat(Tampilan);
String TanggalLahir = String.valueOf(Fm.format(jDateChooser1.getDate()));
try {
Con = Konek.getKoneksiDatabase();
Stm = null;
Sql = "insert into biodata_mahasiswa (id, nim, nama, kode_program_studi,
kode_agama, tempat_lahir," +
"tanggal_lahir, jenis_kelamin, alamat, kota, kode_propinsi,
kode_pos, telpon, handphone, hobi, "+
"wali, alamat_wali, telpon_wali, tahun_masuk, last_update, userid
)
VALUES (NULL,'"+jTextField1.getText()+"', " +
"'"+jTextField2.getText()+"', '"+jComboBox1.getSelectedItem()+"',
'"+jComboBox2.getSelectedItem()+"',
'"+jTextField5.getText()+"','"+TanggalLahir+"'," +
" '"+jComboBox3.getSelectedItem()+"',
'"+jTextField7.getText()+"',
'"+jTextField8.getText()+"', '"+jComboBox4.getSelectedItem()+"',
'"+jTextField10.getText()+"'," +
"'"+jTextField11.getText()+"','"+jTextField12.getText()+"','"+jTextField13.getTex
t()+"','"+jTextField14.getText()+"','"+jTextField15.getText()+"', " +
"'"+jTextField16.getText()+"','"+jComboBox5.getSelectedItem()+"',NOW(),'ADMIN')
";
Stm= Con.createStatement();
int AdaPenambahanRecord=
Stm.executeUpdate(Sql);
TampilDataMhsPadaTabel(); if
(AdaPenambahanRecord>0)
JOptionPane.showMessageDialog(this,"Data Berhasil Tersimpan",
"Informasi",JOptionPane.INFORMATION_MESSAGE);
else
JOptionPane.showMessageDialog(this,"Data Gagal Tersimpan",
"Informasi",JOptionPane.INFORMATION_MESSAGE);
Stm.close();
KosongkanObjek();
jComboBox1.setSelectedIndex(0);
jComboBox2.setSelectedIndex(0);
jComboBox3.setSelectedIndex(0);
jComboBox4.setSelectedIndex(0);
jComboBox5.setSelectedIndex(0);

} catch (SQLException e){


System.out.println("Koneksi Gagal " +e.toString());
}
}

private void jComboBox1ActionPerformed(java.awt.event.ActionEvent


evt) { String Kode=""; try{
Con=Konek.getKoneksiDatabase();
Stm = Con.createStatement();
Sql = "select * from program_studi where
kode_jurusan='" +jComboBox1.getSelectedItem().toString()+"'";
Rs=Stm.executeQuery(Sql); while(Rs.next()) {
Kode= Rs.getString("nama");
}
jTextField3.setText(Kode);
} catch(SQLException e){
System.out.println("koneksi gagal"+e.toString());
}
}

private void jComboBox2ActionPerformed(java.awt.event.ActionEvent


evt) { String Kode=""; try{
Con=Konek.getKoneksiDatabase();
Stm = Con.createStatement();
Sql = "select * from agama where kode='"
+jComboBox2.getSelectedItem().toString()+"'";
Rs=Stm.executeQuery(Sql);
while(Rs.next()) {
Kode= Rs.getString("nama");
}
jTextField4.setText(Kode);
} catch(SQLException e){
System.out.println("koneksi gagal"+e.toString());
}
}

private void jComboBox3ActionPerformed(java.awt.event.ActionEvent evt) {


if (jComboBox3.getSelectedItem().equals("L")){
jTextField6.setText("Laki - Laki");
}else{
jTextField6.setText("Perempuan");
}
}

private void jComboBox4ActionPerformed(java.awt.event.ActionEvent


evt) { String Kode=""; try{
Con=Konek.getKoneksiDatabase();
Stm = Con.createStatement();
Sql = "select * from propinsi where
kode='"
+jComboBox4.getSelectedItem().toString()+"'";
Rs=Stm.executeQuery(Sql);
while(Rs.next()) {
Kode= Rs.getString("nama");
}
jTextField9.setText(Kode);
} catch(SQLException e){
System.out.println("koneksi gagal"+e.toString());
}

private void jTextField1ActionPerformed(java.awt.event.ActionEvent evt) {


try {
Con = Konek.getKoneksiDatabase();

Sql = "Select * from biodata_mahasiswa where nim='"


+jTextField1.getText() + "'";
Stm= Con.createStatement();
Rs = Stm.executeQuery(Sql);
if (Rs.next()){
JOptionPane.showMessageDialog(this,"Stambuk Tersebut Sudah Ada
Silahkan
Input STb Lain Atau Data Mau Di Edit", "Informasi",
JOptionPane.INFORMATION_MESSAGE);
jButton1.setEnabled(false);
jTextField2.setText(Rs.getString("nama"));
jTextField5.setText(Rs.getString("tempat_lahir"));
jDateChooser1.setDate(Rs.getDate("tanggal_lahir"));
jComboBox3.setSelectedItem(Rs.getString("jenis_kelamin"));
jTextField7.setText(Rs.getString("alamat"));
jTextField8.setText(Rs.getString("kota"));
jTextField10.setText(Rs.getString("kode_pos"));
jTextField11.setText(Rs.getString("telpon"));
jTextField12.setText(Rs.getString("handphone"));
jTextField13.setText(Rs.getString("hobi"));
jTextField14.setText(Rs.getString("wali"));
jTextField15.setText(Rs.getString("alamat_wali"));
jTextField16.setText(Rs.getString("telpon_wali"));
jComboBox5.setSelectedItem(Rs.getString("tahun_masuk"));

jComboBox1.setSelectedItem(Rs.getString("kode_program_studi"));
jComboBox2.setSelectedItem(Rs.getString("kode_agama"));
jComboBox4.setSelectedItem(Rs.getString("kode_propinsi"));

} else {
jButton1.setEnabled(true);
jTextField2.setText("");
jTextField3.setText("");
jTextField4.setText("");
jTextField5.setText("");
jTextField6.setText("");
jTextField7.setText("");
jTextField8.setText("");
jTextField9.setText("");
jTextField10.setText("");
jTextField11.setText("");
jTextField12.setText("");
jTextField13.setText("");
jTextField14.setText("");
jTextField15.setText("");
jTextField16.setText("");
jTextField17.setText("");
jComboBox1.setSelectedIndex(0);
jComboBox2.setSelectedIndex(0);
jComboBox3.setSelectedIndex(0);
jComboBox4.setSelectedIndex(0);
jComboBox5.setSelectedIndex(0);
jTextField2.requestFocus();

}catch (SQLException e){


System.out.println("koneksi gagal " + e.toString());
}
}

private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {


String Tampilan="yyyy-MM-dd";
SimpleDateFormat Fm = new SimpleDateFormat(Tampilan);
String TanggalLahir = String.valueOf(Fm.format(jDateChooser1.getDate()));
try {
Con = Konek.getKoneksiDatabase();
Stm = null;
Sql = "update biodata_mahasiswa set nama = '"+jTextField2.getText()+"',
kode_program_studi ='"+jComboBox1.getSelectedItem()+"' , kode_agama =
'"+jComboBox2.getSelectedItem()+"', tempat_lahir =
'"+jTextField5.getText()+"'," +
"tanggal_lahir= '"+TanggalLahir+"', jenis_kelamin =
'"+jComboBox3.getSelectedItem()+"', alamat = '"+jTextField7.getText()+"',
kota='"+jTextField8.getText()+"', kode_propinsi =
'"+jComboBox4.getSelectedItem()+"', kode_pos = '"+jTextField10.getText()+"',
telpon = '"+jTextField11.getText()+"', handphone =
'"+jTextField12.getText()+"', hobi = '"+jTextField13.getText()+"'," +
" wali = '"+jTextField14.getText()+"', alamat_wali =
'"+jTextField15.getText()+"', telpon_wali='"+jTextField16.getText()+"' ,
tahun_masuk='"+jComboBox5.getSelectedItem()+"', last_update= NOW(),
userid='ADMIN' where nim = '"+jTextField1.getText()+"' ";

Stm= Con.createStatement();
int AdaPerubahanRecord=
Stm.executeUpdate(Sql);
TampilDataMhsPadaTabel(); if
(AdaPerubahanRecord>0){
JOptionPane.showMessageDialog(this,"Data Berhasil Di Edit",
"Informasi",JOptionPane.INFORMATION_MESSAGE);
jButton1.setEnabled(true);
}else
JOptionPane.showMessageDialog(this,"Data Gagal Di Edit",
"Informasi",JOptionPane.INFORMATION_MESSAGE);
Stm.close();
KosongkanObjek();
jComboBox1.setSelectedIndex(0);
jComboBox2.setSelectedIndex(0);
jComboBox3.setSelectedIndex(0);
jComboBox4.setSelectedIndex(0);
jComboBox5.setSelectedIndex(0);

} catch (SQLException e){


System.out.println("Koneksi Gagal " +e.toString());
}
}

private void jButton3ActionPerformed(java.awt.event.ActionEvent


evt) { try { Con =
Konek.getKoneksiDatabase();
Stm = null;
Sql = "delete from biodata_mahasiswa where nim =
'"+jTextField1.getText()+"' ";

Stm= Con.createStatement();
int AdaPerubahanRecord=
Stm.executeUpdate(Sql);
TampilDataMhsPadaTabel(); if
(AdaPerubahanRecord>0){
JOptionPane.showMessageDialog(this,"Data Berhasil Di Hapus",
"Informasi",JOptionPane.INFORMATION_MESSAGE);
jButton1.setEnabled(true);
}else
JOptionPane.showMessageDialog(this,"Data Gagal Di Hapus",
"Informasi",JOptionPane.INFORMATION_MESSAGE);
Stm.close();
KosongkanObjek();
jComboBox1.setSelectedIndex(0);
jComboBox2.setSelectedIndex(0);
jComboBox3.setSelectedIndex(0);
jComboBox4.setSelectedIndex(0);
jComboBox5.setSelectedIndex(0);
} catch (SQLException e){
System.out.println("Koneksi Gagal " +e.toString());
}

private void jButton4ActionPerformed(java.awt.event.ActionEvent evt) {


KosongkanObjek();
}

private void jButton6ActionPerformed(java.awt.event.ActionEvent evt) {


CariDataMhs();
}

private void jButton7ActionPerformed(java.awt.event.ActionEvent evt) {


TampilDataMhsPadaTabel();
}

private void jButton5ActionPerformed(java.awt.event.ActionEvent evt) {


this.dispose();
}

public static void main(String args[]) {


java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new FormInputBiodataMahasiswa().setVisible(true);
}
});
}

 kompilasi dan eksekusi kode diatas

Anda mungkin juga menyukai