• Tidak ada hasil yang ditemukan

MVC CRUD DAFTAR OBAT

Dalam dokumen MODUL PELATIHAN JAVA SWING ORACLE (Halaman 33-38)

MODEL,

Secara garis besar, berisi Logic/ logika aplikasi, dalam sesi ini model yang kita buat ada 9 kelas yang mempunyai fungsi berbeda masing-masing kelasnya.

1. Daftarobat Action.java

Mempunyai fungsi mengatur aksi dalam form DaftarObat. public void kosongTeks(){}

public void tombolHapus(){} public void tombolTambah(){} public void tombolSimpan(){}

Modul Pelatihan |Oracle Van Java 2010 33 public void tombolCari(){}

public void tombolCancel(){}

public void editTrue(DattarObat view){} public void editFalse(DattarObat view){} public void fireOnChange(){}

public void tombolEdit(){}

public void mouse() throws SQLException{} method setter getter

 Method setter getter, adalah suatu method untuk pengisian dan pengambilan nilai variable pada suatu class

 kosongTeks(), method untuk melakukan pengosongan dalam teksfield  tombolHapus(), method untuk melakukan penghapusan Database,

 tombolTambah(), method untuk melakukan aksi tambah ketika tombol di tekan  tombolSimpan(), method untuk melakukan aksi jika tombol simpan di tekan  tombolCari(), method untuk melakukan aksi jika tombol cari ditekan

 tombolCancel(), method untuk melakukan aksi jika tombol cancel ditekan

 tomboleditTrue(), method untuk mengembalikan nilai teks field menjadi true untuk melakukan pengeditan

 tomboleditFalse(), method untuk mengembalikan nilai teks field menjadi false untuk melakukan penyimpanan

 fireOnChange(), method untuk menjalankan method yang ada di interface, berguna untuk jika ada perubahan nilai di aksi akan langsung di rubah di GUI

 tombolEdit(), untuk melakukan aksi jika tombol edit ditekan

 mouse(), untuk melakukan aksi jika ada mouse melakukan perintah di GUI, seperti klik, double klik, klik kanan,

2. DeleteDB.java

Mempunyai fungsi untuk melakukan delete di Database

public DeleteDB(String id_obat) throws SQLException {deleted(id_obat);} public void deleted(String id_obat) throws SQLException{

Connection Conn;

Conn = new KoneksiDB().getConnection();

String Query = "delete from daftarobat1 WHERE Id_Obat = '"+id_obat+"'"; Statement smnt = Conn.createStatement();

smnt.executeUpdate(Query);

System.out.println("berhasil dihapus"); }

 String Query = “ …. “, merupakan isi dari perintah SQL untuk melakukan eksekusi command database

Modul Pelatihan |Oracle Van Java 2010 34  Statement smnt = Conn.createStatement(), pembuatan objek statement yang di

assignment dengan Conn.createStatement, gunanya untuk mengeksekusi String query yang sudah di definisikan

3. HomeAction.java

Mempunyai fungsi mengtur aksi dalam form Home public void daftarObat() throws SQLException {} public void keluar(){}

 daftarObat(), method untuk melakukan aksi jika menu daftar obat di tekan

4. InsertDB.java

Mempunyai fungsi untuk melakukan Insert data di Database 5. KoneksiDB.java

Melakukan koneksi ke database public class KoneksiDB{

private String url, dbn, usr, pwd; public Connection getConnection() {

dbn = "jdea";

url = "jdbc:mysql://localhost/"+dbn; usr = "root";

pwd = "";

Connection con = null; try{

Class.forName("com.mysql.jdbc.Driver");

con = DriverManager.getConnection(url,usr,pwd); System.out.println("*** Connect to the database ***"); }catch (ClassNotFoundException e) { e.printStackTrace(); }catch (SQLException e) { e.printStackTrace(); } return con; } }

 Dalam satu class ini, berfungsi sebagai koneksi ke database, 6. LoginAction.java

Mempunyai fungsi mengatur aksi dalam form Login public LoginListener getLoginListener() {}

public void setLoginListener(LoginListener loginListener) {} public String getUserName() {}

public void setUserName(String userName) {} public String getPassword() {}

Modul Pelatihan |Oracle Van Java 2010 35 public void reset(){}

public void submitTombol(){} public void cancelTombol(){} public void fireOnChange(){}

 Method dengan set/get memberi dan mengambil nilai dari attribut dari suatu class  Reset(), untuk memberikan nilai kosong ke text field, jika sudah selesai di isi  submitTombol(), untuk memberi nilai aksi ke tombol login

 cancelTombol(), untuk memberi nilai aksi ke tombol cancel

 fireOnChange(), untuk memberikan nilai langsung dari aksi ke GUI

7. SelectDB.java

Mempunyai fungsi melakukan select Database atau reload Database //Access Rows and Columns from database

Vector<String> Columns = new Vector<String>();

Vector<Vector<Object>> Rows = new Vector<Vector<Object>>(); //Get Columns From database

for (int i = 1; i <= cols; i++){

Columns.addElement(metaDt.getColumnName(i)); }

Rows.clear(); // clear unwanted value if exist any in Rows variable. //Get RowsNames From database

while( results.next()){

Vector<Object> row = new Vector<Object>(cols); for (int i = 1; i <= cols; i++){

row.addElement(results.getObject(i)); }

Rows.addElement(row); }

 Vector, untuk melakukan penampungan data dari database

8. SelectRowDB.java

Merupakan aksi dari mouse listener untuk melakukan aksinya, jika klik mouse public SelectRowDB(DattarObat aksi){}

public void selectRow(String id_obat) throws SQLException{} public void retreiveData(ResultSet results) throws SQLException{}

 SelectRowDB(), constructor class untuk melakukan referensi objek by parameter 9. UpdateDB.java

Mempunyai fungsi untuk mengupdate database.

public void Updated(String id_obat, String kategori, String kuantitas, String harga, String desc, String waktu, String supplier, String jenis_obat, String select) throws SQLException{

Modul Pelatihan |Oracle Van Java 2010 36 Conn = new KoneksiDB().getConnection();

String Query = "UPDATE daftarobat1 set Id_Obat='"+id_obat+"',

Kategori='"+kategori+"', kuantitas='"+kuantitas+"', harga='"+harga+"', desk='"+desc+"', waktu='"+waktu+"', supplier='"+supplier+"', Jenis_Obat='"+jenis_obat+"' where id_obat='"+select+"'";

System.out.println(Query); Statement smnt = Conn.createStatement(); smnt.executeUpdate(Query); System.out.println("berhasil diupdate"); } MODEL.EVENT

Secara garis besar, dalam package ini berupa interface class, yang berfungsi untuk menyambungkan antara event aksi dan GUI, jika ada aksi maka GUI akan juga ikut berubah

1. DaftarobatListener.java

Melalukan hubungan dengan view DaftarObat.java public interface DaftarObatListener {

public void onChange(DaftarobatAction aksi); }

2. LoginListener.java

Melakukan hubungan dengan view Login.java public interface LoginListener {

public void onChange(LoginAction login); }

3. HomeListener.java

Melakukan hubungan dengan Home.java public interface HomeListener {

public void onChange(HomeAction aksi); }

VIEW,

Secara garis besar, dalam package ini menampung semua view/tampilan GUI.Yang menyusun semua tampilan pada aplikasi.

1. Home.java

Untuk membuat tampilan dalam form Home homeAksi = new HomeAction();

homeController = new HomeController(); homeAksi.setListener(this);

homeController.setHomeAksi(homeAksi); 2. Login.java

Untuk membuat tampilan dalam form Login loginAksi = new LoginAction();

Modul Pelatihan |Oracle Van Java 2010 37 loginController = new LoginController();

loginAksi.setLoginListener(this); loginController.setAksi(loginAksi); 3. TableDatat.java

Untuk membuat tampilan Jtable dalam form Table Obat public TabelData() throws SQLException {

model = new SelectDB().selected(); table = new JTable(model); setLayout(new BorderLayout());

add(new JScrollPane(table), BorderLayout.CENTER); }

4. DaftarObat.java

Untuk membuat tampilan dalam form DaftarObat aksi = new DaftarobatAction();

daftarControl = new DaftarobatController(); aksi.setListener(this);

daftarControl.setAksi(aksi);

CONTROLLER,

Secara garis besar, dalam package ini berfungsi untuk melakukan pengaturan kemana aplikasi yang akan di eksekusi, dalam package ini tidak ada logic.

1. HomeController.java

Pengaturan aksi didalam Home.java

public void setHomeAksi(HomeAction homeAksi) {}

public void daftarObatForm(Home view) throws SQLException{} public void keluar(Home view){}

2. LoginController.java

Pengaturan aksi didalam Login.java public void setAksi(LoginAction aksi) {} public void loginForm(Login view){} public void cancelForm(Login view){}

3. DaftarobatController.java

Pengaturan aksi didalam Daftarobat.java public void setAksi(DaftarobatAction aksi) {} public void tambahForm(DattarObat view){} public void cancelForm(DattarObat view){}

public void hapusForm(DattarObat view) throws SQLException{} public void simpanForm(DattarObat view) throws SQLException{} public void cariForm(DattarObat view){}

public void editForm(DattarObat view) throws SQLException{} public void mouseAction(DattarObat view) throws SQLException{} public void setterTextField(DattarObat view){}

Dalam dokumen MODUL PELATIHAN JAVA SWING ORACLE (Halaman 33-38)

Dokumen terkait