0% found this document useful (0 votes)
14 views33 pages

Mahasiswa CRUD Operations in Java

This document contains code for a student management application built using Java and MySQL. It includes classes for the DAO, model, controller and view components of an MVC architecture. The DAO class implements methods for database operations like insert, update, delete and search. The controller class wires everything together by calling the DAO methods and populating the view.

Uploaded by

Summidiya Ajeng
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
14 views33 pages

Mahasiswa CRUD Operations in Java

This document contains code for a student management application built using Java and MySQL. It includes classes for the DAO, model, controller and view components of an MVC architecture. The DAO class implements methods for database operations like insert, update, delete and search. The controller class wires everything together by calling the DAO methods and populating the view.

Uploaded by

Summidiya Ajeng
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

Nama : Summidiya Ajeng Sugiarti

Kelas : XII RPL C

Absen : 28

Tugas : Pbo - MVC 2

[Link]

package [Link];

import [Link];

import [Link];

import [Link];

import [Link];

import [Link];

import [Link];

import [Link];

import [Link];

import [Link];

import [Link];

import [Link];

import [Link];

import [Link];

/**

* @author ISTI
*/

public class daoMahasiswa implements implementMahasiswa{

Connection connection;

final String insert = "INSERT INTO tblmahasiswa (nim, nama,jk, alamat) VALUES (?, ?, ?,?);";

final String update = "UPDATE tblmahasiswa set nim=?, nama=?, jk=?, alamat=? where id=? ;";

final String delete = "DELETE FROM tblmahasiswa where id=? ;";

final String select = "SELECT * FROM tblmahasiswa;";

final String carinama = "SELECT * FROM tblmahasiswa where nama like ?";

public daoMahasiswa() {

connection = [Link]();

public void insert(mahasiswa b) {

PreparedStatement statement = null;

try {

statement = [Link](insert,Statement.RETURN_GENERATED_KEYS);

[Link](1, [Link]());

[Link](2, [Link]());

[Link](3, [Link]());

[Link](4, [Link]());

[Link]();

ResultSet rs = [Link]();

while ([Link]()) {
[Link]([Link](1));

} catch (SQLException ex) {

[Link]();

} finally {

try {

[Link]();

} catch (SQLException ex) {

[Link]();

public void update(mahasiswa b) {

PreparedStatement statement = null;

try {

statement = [Link](update);

[Link](1, [Link]());

[Link](2, [Link]());

[Link](3, [Link]());

[Link](4, [Link]());

[Link](5, [Link]());

[Link]();
} catch (SQLException ex) {

[Link]();

} finally {

try {

[Link]();

} catch (SQLException ex) {

[Link]();

public void delete(int id) {

PreparedStatement statement = null;

try {

statement = [Link](delete);

[Link](1, id);

[Link]();

} catch (SQLException ex) {

[Link]();

} finally {

try {

[Link]();

} catch (SQLException ex) {


[Link]();

public List<mahasiswa> getALL() {

List<mahasiswa> lb = null;

try {

lb = new ArrayList<mahasiswa>();

Statement st = [Link]();

ResultSet rs = [Link](select);

while ([Link]()) {

mahasiswa b = new mahasiswa();

[Link]([Link]("id"));

[Link]([Link]("nim"));

[Link]([Link]("nama"));

[Link]([Link]("jk"));

[Link]([Link]("alamat"));

[Link](b);

} catch (SQLException ex) {

[Link]([Link]()).log([Link], null, ex);

return lb;
}

public List<mahasiswa> getCariNama(String nama) {

List<mahasiswa> lb = null;

try {

lb = new ArrayList<mahasiswa>();

PreparedStatement st = [Link](carinama);

[Link](1, "%" + nama + "%");

ResultSet rs = [Link]();

while ([Link]()) {

mahasiswa b = new mahasiswa();

[Link]([Link]("id"));

[Link]([Link]("nim"));

[Link]([Link]("nama"));

[Link]([Link]("jk"));

[Link]([Link]("alamat"));

[Link](b);

} catch (SQLException ex) {

[Link]([Link]()).log([Link], null, ex);

return lb;

}
[Link]

package [Link];

import [Link];

import [Link].*;

/**

* @author ISTI

*/

public interface implementMahasiswa {

public void insert(mahasiswa b);

public void update(mahasiswa b);

public void delete(int id);

public List<mahasiswa> getALL();

public List<mahasiswa> getCariNama(String nama);

[Link]

package [Link];
import [Link];

import [Link];

import [Link];

import [Link];

import [Link];

import [Link];

import [Link];

/**

* @author ISTI

*/

public class controllerMahasiswa {

FormMahasiswa frame;

implementMahasiswa implMahasiswa;

List<mahasiswa> lb;

public controllerMahasiswa(FormMahasiswa frame) {

[Link] = frame;

implMahasiswa = new daoMahasiswa();

lb = [Link]();

//mengosongkan field

public void reset() {


[Link]().setText("");

[Link]().setText("");

[Link]().setText("");

[Link]().setSelectedItem("");

[Link]().setText("");

//menampilkan data ke dalam tabel

public void isiTable() {

lb = [Link]();

tableModelMahasiswa tmb = new tableModelMahasiswa(lb);

[Link]().setModel(tmb);

//merupakan fungsi untuk menampilkan data yang dipilih dari tabel

public void isiField(int row) {

[Link]().setText([Link](row).getId().toString());

[Link]().setText([Link](row).getNim());

[Link]().setText([Link](row).getNama());

[Link]().setSelectedItem([Link](row).getJk());

[Link]().setText([Link](row).getAlamat());

//merupakan fungsi untuk insert data berdasarkan inputan user dari textfield di frame
public void insert() {

if (![Link]().getText().trim().isEmpty()& ![Link]().getText().trim().isEmpty()) {

mahasiswa b = new mahasiswa();

[Link]([Link]().getText());

[Link]([Link]().getText());

[Link]([Link]().getSelectedItem().toString());

[Link]([Link]().getText());

[Link](b);

[Link](null, "Simpan Data sukses");

} else {

[Link](frame, "Data Tidak Boleh Kosong");

//berfungsi untuk update data berdasarkan inputan user dari textfield di frame

public void update() {

if (![Link]().getText().trim().isEmpty()) {

mahasiswa b = new mahasiswa();

[Link]([Link]().getText());

[Link]([Link]().getText());
[Link]([Link]().getSelectedItem().toString());

[Link]([Link]().getText());

[Link]([Link]([Link]().getText()));

[Link](b);

[Link](null, "Update Data sukses");

} else {

[Link](frame, "Pilih data yang akan di ubah");

//berfungsi menghapus data yang dipilih

public void delete() {

if (![Link]().getText().trim().isEmpty()) {

int id = [Link]([Link]().getText());

[Link](id);

[Link](null, "Hapus Data sukses");

} else {

[Link](frame, "Pilih data yang akan di hapus");

public void isiTableCariNama() {

lb = [Link]([Link]().getText());
tableModelMahasiswa tmb = new tableModelMahasiswa(lb);

[Link]().setModel(tmb);

public void carinama() {

if (![Link]().getText().trim().isEmpty()) {

[Link]([Link]().getText());

isiTableCariNama();

} else {

[Link](frame, "SILAHKAN PILIH DATA");

[Link]

package [Link];

import [Link];

import [Link];

import [Link];

/**

* @author ISTI

*/

public class koneksi {


static Connection con;

public static Connection connection() {

if (con == null) {

MysqlDataSource data = new MysqlDataSource();

[Link]("db_crud");

[Link]("root");

[Link]("");

try {

con = [Link]();

} catch (SQLException ex) {

[Link]();

return con;

[Link]

mahasiswa

package [Link];

/**

*
* @author ISTI

*/

public class mahasiswa {

private Integer id;

private String nim;

private String nama;

private String jk;

private String alamat;

public Integer getId() {

return id;

public void setId(Integer id) {

[Link] = id;

public String getNim() {

return nim;

public void setNim(String nim) {

[Link] = nim;

}
public String getNama() {

return nama;

public void setNama(String nama) {

[Link] = nama;

public String getJk() {

return jk;

public void setJk(String jk) {

[Link] = jk;

public String getAlamat() {

return alamat;

public void setAlamat(String alamat) {

[Link] = alamat;

}
}

tableModelMahasiswa

package [Link];

import [Link];

import [Link];

/**

* @author ISTI

*/

public class tableModelMahasiswa extends AbstractTableModel{

List<mahasiswa> lb;

public tableModelMahasiswa(List<mahasiswa> lb) {

[Link] = lb;

@Override

public int getColumnCount() {

return 5;

public int getRowCount() {


return [Link]();

@Override

public String getColumnName(int column) {

switch (column) {

case 0:

return "ID";

case 1:

return "Nim";

case 2:

return "Nama";

case 3:

return "Kelamin";

case 4:

return "Alamat";

default:

return null;

@Override

public Object getValueAt(int row, int column) {

switch (column) {

case 0:
return [Link](row).getId();

case 1:

return [Link](row).getNim();

case 2:

return [Link](row).getNama();

case 3:

return [Link](row).getJk();

case 4:

return [Link](row).getAlamat();

default:

return null;

[Link]

package [Link];

import [Link];

import [Link];

import [Link];

import [Link];

import [Link];

import [Link];

import [Link];
import [Link];

import [Link];

import [Link];

import [Link];

import [Link];

import [Link];

import [Link];

import [Link].*;

/**

* @author ISTI

*/

public class FormMahasiswa extends [Link] {

controllerMahasiswa cbt;

/**

* Creates new form FormMahasiswa

*/

public FormMahasiswa() {

initComponents();

cbt = new controllerMahasiswa(this);

[Link]();

/**
* 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.

*/

@SuppressWarnings("unchecked")

// <editor-fold defaultstate="collapsed" desc="Generated Code">

private void initComponents() {

jPanel1 = new [Link]();

jLabel1 = new [Link]();

txtID = new [Link]();

jLabel2 = new [Link]();

txtNim = new [Link]();

txtNama = new [Link]();

jLabel3 = new [Link]();

jLabel4 = new [Link]();

jLabel5 = new [Link]();

jScrollPane1 = new [Link]();

tabelData = new [Link]();

buttonUpdate = new [Link]();

buttonInsert = new [Link]();

buttonDelete = new [Link]();

buttonReset = new [Link]();

jScrollPane2 = new [Link]();

txtAlamat = new [Link]();


txtCariNama = new [Link]();

jLabel6 = new [Link]();

buttonCariNama = new [Link]();

setJk = new [Link]();

setDefaultCloseOperation([Link].EXIT_ON_CLOSE);

[Link](new [Link](204, 255, 204));

[Link]([Link]());

[Link](new [Link]("Tahoma", 1, 12)); // NOI18N

[Link]("ID");

[Link](new [Link]("Tahoma", 1, 12)); // NOI18N

[Link]("NIM");

[Link](new [Link]("Tahoma", 1, 12)); // NOI18N

[Link]("Nama");

[Link](new [Link]("Tahoma", 1, 12)); // NOI18N

[Link]("Kelamin");

[Link](new [Link]("Tahoma", 1, 12)); // NOI18N

[Link]("Alamat");
[Link](new [Link](

new Object [][] {

{null, null, null, null},

{null, null, null, null},

{null, null, null, null},

{null, null, null, null}

},

new String [] {

"Title 1", "Title 2", "Title 3", "Title 4"

));

[Link](new [Link]() {

public void mouseClicked([Link] evt) {

tabelDataMouseClicked(evt);

});

[Link](tabelData);

[Link](new [Link]("Tahoma", 1, 14)); // NOI18N

[Link]("Ubah");

[Link](new [Link]() {

public void actionPerformed([Link] evt) {

buttonUpdateActionPerformed(evt);

});
[Link](new [Link]("Tahoma", 1, 14)); // NOI18N

[Link]("Simpan");

[Link](new [Link]() {

public void actionPerformed([Link] evt) {

buttonInsertActionPerformed(evt);

});

[Link](new [Link]("Tahoma", 1, 14)); // NOI18N

[Link]("Hapus");

[Link](new [Link]() {

public void actionPerformed([Link] evt) {

buttonDeleteActionPerformed(evt);

});

[Link](new [Link]("Tahoma", 1, 14)); // NOI18N

[Link]("Batal");

[Link](new [Link]() {

public void actionPerformed([Link] evt) {

buttonResetActionPerformed(evt);

});
[Link](20);

[Link](5);

[Link](txtAlamat);

[Link](new [Link]("Tahoma", 1, 12)); // NOI18N

[Link]("Cari>--Nama");

[Link](new [Link]("Tahoma", 1, 14)); // NOI18N

[Link]("Cari");

[Link](new [Link]() {

public void actionPerformed([Link] evt) {

buttonCariNamaActionPerformed(evt);

});

[Link](new [Link](new String[] { "Pilih", "Laki - laki",


"Perempuan" }));

[Link] jPanel1Layout = new [Link](jPanel1);

[Link](jPanel1Layout);

[Link](

[Link]([Link])

.addGroup([Link]()

.addContainerGap()

.addGroup([Link]([Link])

.addGroup([Link]()
.addGroup([Link]([Link]
NG, false)

.addGroup([Link],
[Link]()

.addComponent(jLabel1)

.addPreferredGap([Link],
[Link].DEFAULT_SIZE, Short.MAX_VALUE)

.addComponent(txtID, [Link].PREFERRED_SIZE, 221,


[Link].PREFERRED_SIZE))

.addGroup([Link],
[Link]()

.addComponent(jLabel2)

.addPreferredGap([Link],
[Link].DEFAULT_SIZE, Short.MAX_VALUE)

.addComponent(txtNim, [Link].PREFERRED_SIZE, 221,


[Link].PREFERRED_SIZE))

.addGroup([Link],
[Link]()

.addComponent(jLabel3)

.addGap(61, 61, 61)

.addComponent(txtNama, [Link].PREFERRED_SIZE, 221,


[Link].PREFERRED_SIZE))

.addGroup([Link],
[Link]()

.addGroup([Link]([Link]
ADING)

.addComponent(jLabel4)

.addComponent(jLabel5))

.addGap(47, 47, 47)


.addGroup([Link]([Link]
ADING, false)

.addComponent(jScrollPane2, [Link].DEFAULT_SIZE, 221,


Short.MAX_VALUE)

.addComponent(setJk, 0, [Link].DEFAULT_SIZE,
Short.MAX_VALUE))))

.addGroup([Link]([Link]
G)

.addGroup([Link]()

.addGap(43, 43, 43)

.addComponent(jLabel6)

.addPreferredGap([Link])

.addComponent(txtCariNama, [Link].PREFERRED_SIZE, 221,


[Link].PREFERRED_SIZE)

.addPreferredGap([Link])

.addComponent(buttonCariNama, [Link].PREFERRED_SIZE, 62,


[Link].PREFERRED_SIZE)

.addGap(0, 0, Short.MAX_VALUE))

.addGroup([Link]()

.addPreferredGap([Link])

.addComponent(jScrollPane1, [Link].DEFAULT_SIZE, 513,


Short.MAX_VALUE))))

.addGroup([Link]()

.addComponent(buttonInsert, [Link].PREFERRED_SIZE, 121,


[Link].PREFERRED_SIZE)

.addPreferredGap([Link])

.addComponent(buttonUpdate, [Link].PREFERRED_SIZE, 113,


[Link].PREFERRED_SIZE)

.addGap(18, 18, 18)


.addComponent(buttonDelete, [Link].PREFERRED_SIZE, 121,
[Link].PREFERRED_SIZE)

.addPreferredGap([Link])

.addComponent(buttonReset, [Link].PREFERRED_SIZE, 100,


[Link].PREFERRED_SIZE)

.addGap(0, 0, Short.MAX_VALUE)))

.addContainerGap())

);

[Link](

[Link]([Link])

.addGroup([Link]()

.addGap(16, 16, 16)

.addGroup([Link]([Link])

.addComponent(jLabel1)

.addComponent(txtID, [Link].PREFERRED_SIZE, 29,


[Link].PREFERRED_SIZE)

.addComponent(txtCariNama, [Link].PREFERRED_SIZE, 29,


[Link].PREFERRED_SIZE)

.addComponent(jLabel6)

.addComponent(buttonCariNama))

.addGap(8, 8, 8)

.addGroup([Link]([Link])

.addGroup([Link]()

.addGroup([Link]([Link]
NE)

.addComponent(jLabel2)

.addComponent(txtNim, [Link].PREFERRED_SIZE, 29,


[Link].PREFERRED_SIZE))
.addPreferredGap([Link])

.addGroup([Link]([Link]
NE)

.addComponent(jLabel3)

.addComponent(txtNama, [Link].PREFERRED_SIZE, 29,


[Link].PREFERRED_SIZE))

.addPreferredGap([Link])

.addGroup([Link]([Link]
NE)

.addComponent(jLabel4)

.addComponent(setJk, [Link].PREFERRED_SIZE, 31,


[Link].PREFERRED_SIZE))

.addPreferredGap([Link])

.addGroup([Link]([Link]
G)

.addComponent(jScrollPane2, [Link].PREFERRED_SIZE, 88,


[Link].PREFERRED_SIZE)

.addGroup([Link]()

.addGap(25, 25, 25)

.addComponent(jLabel5))))

.addComponent(jScrollPane1, [Link].PREFERRED_SIZE, 193,


[Link].PREFERRED_SIZE))

.addGap(32, 32, 32)

.addGroup([Link]([Link])

.addComponent(buttonUpdate)

.addComponent(buttonInsert)

.addComponent(buttonDelete)

.addComponent(buttonReset, [Link].DEFAULT_SIZE,
[Link].DEFAULT_SIZE, Short.MAX_VALUE))
.addContainerGap())

);

[Link] layout = new [Link](getContentPane());

getContentPane().setLayout(layout);

[Link](

[Link]([Link])

.addGroup([Link]()

.addContainerGap()

.addComponent(jPanel1, [Link].DEFAULT_SIZE,
[Link].DEFAULT_SIZE, Short.MAX_VALUE)

.addContainerGap())

);

[Link](

[Link]([Link])

.addGroup([Link]()

.addContainerGap()

.addComponent(jPanel1, [Link].DEFAULT_SIZE,
[Link].DEFAULT_SIZE, Short.MAX_VALUE)

.addContainerGap())

);

pack();

}// </editor-fold>

private void buttonInsertActionPerformed([Link] evt) {


// TODO add your handling code here:

[Link]();

[Link]();

[Link]();

private void buttonUpdateActionPerformed([Link] evt) {

[Link]();

[Link]();

[Link]();// TODO add your handling code here:

private void buttonDeleteActionPerformed([Link] evt) {

[Link]();

[Link]();

[Link]();// TODO add your handling code here:

private void buttonResetActionPerformed([Link] evt) {

[Link]();// TODO add your handling code here:

}
private void buttonCariNamaActionPerformed([Link] evt) {

[Link]();// TODO add your handling code here:

private void tabelDataMouseClicked([Link] evt) {

[Link]([Link]());// TODO add your handling code here:

public JTextField getTxtID(){

return txtID;

public JTextField getTxtNim(){

return txtNim;

public JTextField getTxtNama(){

return txtNama;

public JComboBox getTxtJk(){

return setJk;

public JTextArea getTxtAlamat(){

return txtAlamat;

}
public JTable getTabelData(){

return tabelData;

public JButton getButtonInsert(){

return buttonInsert;

public JButton getButtonUpdate(){

return buttonUpdate;

public JButton getButtonDetele(){

return buttonDelete;

public JButton getButtonReset(){

return buttonReset;

public JButton getButtonCari(){

return buttonCariNama;

public JTextField getTxtCariNama(){

return txtCariNama;

}
OUTPUT

You might also like