Minggu, 03 Juni 2012

Pemrograman Java : Membuat Aplikasi Klinik Menggunakan NetBeans



pemrogaman_java_netbean
Pada latihan Java kali ini penggunaan pallete pada Netbean akan saling di kombinasikan, sehingga user akan lebih mudah dalam menjalankan aplikasi yang akan kita buat. Penggunaan Radio Button, Check Box, Combo Box akan di terapkan pada contoh berikut ini, diharapkan dengan latihan ini kita dapat mengkolaborasikan dan tahu fungsi masing-masing pallete tersebut.
Ketentuan Soal:
Panel Jenis Poli:
Jenis Poli | Nama Dokter |Waktu Praktek
Umum | Mahfud Akbar |Pagi
Gigi | Mutia Khanza | Sore
Saraf | Annisa Susilowati |Malam
Panel Ruangan:
Nama Ruang |Harga/Hari
Kenanga |200000
Mawar |300000
Melati |400000
Jika user klik salah satu radio button pada Panel Jenis Poli Umum, Gigi atau Saraf maka Field text pada Nama Dokter dan Waktu Praktek akan muncul otomatis.
Lama Inap di input manual, kemudian Pilih Ruangan pada Combo Box Nama Ruang, maka otomatis Harga/hari, Diskon, dan Total akan muncul sesuai pilihan.
Data Pasien : No. Pasien dan Nama di input Manual
Jika Check Box pada Perincian Biaya di pilih maka total akan bertamah otomatis.
Bersih button akan membersihkan isian pada text field dan dll.
Keluar maka akan menutup aplikasi.
Variable name dan nama masing-masing Text Field, Combo Box, Check Box, Radio Button menyesuaikan Coding.
Berikut Codingnya
Deklarasi Global Variable Integer:
public class Quiz extends javax.swing.JFrame {
int biayaadmin, konsultasi, obat, diskon,totalharga, total;
Coding pada Radio Button Umum:
private void jrbtnumumActionPerformed(java.awt.event.ActionEvent evt) {
if(jrbtnumum.isSelected()){
jtxtnadok.setText(“Mahfud Akbar”);
jtxtwktpraktek.setText(“Pagi”);
}
}
Coding pada Radio Button Gigi:
private void jrbtngigiActionPerformed(java.awt.event.ActionEvent evt) {
if(jrbtngigi.isSelected()){
jtxtnadok.setText(“Mutia Khanza”);
jtxtwktpraktek.setText(“Sore”);
}
}
Coding pada Radio Button Saraf:
private void jrbtnsarafActionPerformed(java.awt.event.ActionEvent evt) {
if(jrbtnsaraf.isSelected()){
jtxtnadok.setText(“Annisa Susilowati”);
jtxtwktpraktek.setText(“Malam”);
}
}
Coding pada Combo Box Nama Ruang:
private void jconaruangActionPerformed(java.awt.event.ActionEvent evt) {
if(jconaruang.getSelectedItem().equals(“Kenanga”)){
jtxtharga.setText(“200000″);
int harga=Integer.parseInt(jtxtharga.getText());
int lama=Integer.parseInt(jtxtlama.getText());
int totalharga=harga*lama;
int potongan1=totalharga*10/100;
int potongan2=totalharga*0;
if (lama>4){
diskon=potongan1;
jtxtdiskon.setText(Integer.toString(potongan1));
total=totalharga-diskon+biayaadmin+obat+konsultasi;
jtxttotal.setText(String.valueOf(total));
}
else {
diskon=potongan2;
jtxtdiskon.setText(Integer.toString(potongan2));
total=totalharga-diskon+biayaadmin+obat+konsultasi;
jtxttotal.setText(String.valueOf(total));
}
}
else if(jconaruang.getSelectedItem().equals(“Mawar”)){
jtxtharga.setText(“300000″);
int harga=Integer.parseInt(jtxtharga.getText());
int lama=Integer.parseInt(jtxtlama.getText());
int totalharga=harga*lama;
int potongan1=totalharga*10/100;
int potongan2=totalharga*0;
if (lama>4){
diskon=potongan1;
jtxtdiskon.setText(Integer.toString(potongan1));
total=totalharga-diskon+biayaadmin+obat+konsultasi;
jtxttotal.setText(String.valueOf(total));
}
else {
diskon=potongan2;
jtxtdiskon.setText(Integer.toString(potongan2));
total=totalharga-diskon+biayaadmin+obat+konsultasi;
jtxttotal.setText(String.valueOf(total));
}
}
else if(jconaruang.getSelectedItem().equals(“Melati”)){
jtxtharga.setText(“400000″);
int harga=Integer.parseInt(jtxtharga.getText());
int lama=Integer.parseInt(jtxtlama.getText());
int totalharga=harga*lama;
int potongan1=totalharga*10/100;
int potongan2=totalharga*0;
if (lama>4){
diskon=potongan1;
jtxtdiskon.setText(Integer.toString(potongan1));
total=totalharga-diskon+biayaadmin+obat+konsultasi;
jtxttotal.setText(String.valueOf(total));
}
else {
diskon=potongan2;
jtxtdiskon.setText(Integer.toString(potongan2));
total=totalharga-diskon+biayaadmin+obat+konsultasi;
jtxttotal.setText(String.valueOf(total));
}
}
}
Coding pada Checck Box Administrasi:
private void jchkadminActionPerformed(java.awt.event.ActionEvent evt) {
if(jchkadmin.isSelected()) {
biayaadmin=5000;
jtxtadmin.setText(String.valueOf(biayaadmin));
int harga = Integer.parseInt(jtxtharga.getText());
int lama = Integer.parseInt(jtxtlama.getText());
int totaldiskon=Integer.parseInt(jtxtdiskon.getText());
total=(harga*lama)-totaldiskon+biayaadmin+konsultasi+obat;
jtxttotal.setText(String.valueOf(total));
}
else {
biayaadmin=0;
jtxtadmin.setText(String.valueOf(biayaadmin));
int harga = Integer.parseInt(jtxtharga.getText());
int lama = Integer.parseInt(jtxtlama.getText());
int totaldiskon=Integer.parseInt(jtxtdiskon.getText());
total=(harga*lama)-totaldiskon+biayaadmin+konsultasi+obat;
jtxttotal.setText(String.valueOf(total));
}
}
Coding pada Checck Box Konsultasi:
private void jchkkonsultasiActionPerformed(java.awt.event.ActionEvent evt) {
if(jchkkonsultasi.isSelected()) {
konsultasi=20000;
jtxtkonsultasi.setText(String.valueOf(konsultasi));
int harga = Integer.parseInt(jtxtharga.getText());
int lama = Integer.parseInt(jtxtlama.getText());
int totaldiskon=Integer.parseInt(jtxtdiskon.getText());
total=(harga*lama)-totaldiskon+biayaadmin+konsultasi+obat;
jtxttotal.setText(String.valueOf(total));
}
else {
konsultasi=0;
jtxtkonsultasi.setText(String.valueOf(konsultasi));
int harga = Integer.parseInt(jtxtharga.getText());
int lama = Integer.parseInt(jtxtlama.getText());
int totaldiskon=Integer.parseInt(jtxtdiskon.getText());
total=(harga*lama)-totaldiskon+biayaadmin+konsultasi+obat;
jtxttotal.setText(String.valueOf(total));
}
}
Coding pada Checck Box Obat:
private void jchkobatActionPerformed(java.awt.event.ActionEvent evt) {
if(jchkobat.isSelected()) {
obat=50000;
jtxtobat.setText(String.valueOf(obat));
int harga = Integer.parseInt(jtxtharga.getText());
int lama = Integer.parseInt(jtxtlama.getText());
int totaldiskon=Integer.parseInt(jtxtdiskon.getText());
total=(harga*lama)-totaldiskon+biayaadmin+konsultasi+obat;
jtxttotal.setText(String.valueOf(total));
}
else {
obat=0;
jtxtobat.setText(String.valueOf(obat));
int harga = Integer.parseInt(jtxtharga.getText());
int lama = Integer.parseInt(jtxtlama.getText());
int totaldiskon=Integer.parseInt(jtxtdiskon.getText());
total=(harga*lama)-totaldiskon+biayaadmin+konsultasi+obat;
jtxttotal.setText(String.valueOf(total));
}
}
Bersih Button:
private void jbtnbersihActionPerformed(java.awt.event.ActionEvent evt) {
jchkkonsultasi.setSelected(false);
jtxtkonsultasi.setText(” “);
jchkadmin.setSelected(false);
jtxtadmin.setText(” “);
jchkobat.setSelected(false);
jtxtobat.setText(” “);
jconaruang.setSelectedIndex(0);
jtxtlama.setText(” “);
jtxtharga.setText(” “);
jtxtnadok.setText(” “);
jtxtdiskon.setText(” “);
rbtngrpjepol.clearSelection();
jtxttotal.setText(” “);
jtxtnopasien.setText(” “);
jtxtnamapasien.setText(” “);
jtxtwktpraktek.setText(” “);
}
Keluar Button:
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
dispose();
}
Hasil Run Shift+F6 sebagai berikut:

pemrogaman_java_hasil_

Kamis, 31 Mei 2012

Membuat Program Konversi Mata Uang dengan Netbeans

Kali ini saya akan memberikan sebuah tutorial membuat program konversi mata uang dengan menggunakan Netbeans, dan tentu saja bahasa pemrograman yang saya gunakan yaitu Java.
Hal pertama yang perlu kamu lakukan yaitu buka program Netbeans. Saya masih menggunakan NetBeans 5.5.1, kalo mau menggunakan NetBeans yang terbaru juga bisa kok.
Setelah itu ikuti perintah-perintah berikut:
  • Klik menu file – new project – General – Java Class Library. Kamu bisa mengubah nama project sesuai keinginan.Buatlah Jpanel Form pada project yang sudah kamu buat.
  • Klik kanan form pada jendela design – setLayout – GridBagLayout.
  • Masukkan jLabel, jTextField1, jTextField2, jButton1, jButton2, jButton3, jButton4 pada form Jpanel.
  • Klik kanan GridBagLayout dan pilih Customize.
  • Aturlah letak-letak swing ini seperti pada gambar. Masukkan nilai Grid Width 4 dan Fill horizontal pada jTextField1 dan jTextField2. Close.
  • Klik jTextField2 pada form Jpanel dan hapus centang editable pada properties. Silahkan mengganti nama-nama button dan label.
  • Pindah ke jendela source dan tambahkan source berikut.
implements java.io.Serializable
  • Klik kanan Bean Pattern – add – property – masukkan nama sesuai keinginan (contoh: valuta) – ganti type dengan float – centang mode bound.
  • Klik kanan jButton1 atau USD – event- action – action performed – ketik source berikut.
float usd, hasil;
usd=Float.parseFloat(jTextField1.getText());
hasil=usd/9230;
jTextField2.setText(String.valueOf(hasil));
  • Klik kanan jButton2 atau AUD – event- action – action performed – ketik source berikut.
float aud, hasil;
aud=Float.parseFloat(jTextField1.getText());
hasil=aud/7880;
jTextField2.setText(String.valueOf(hasil));
  • Klik kanan jButton3 atau CAD – event- action – action performed – ketik source berikut.
float cad, hasil;
cad=Float.parseFloat(jTextField1.getText());
hasil=cad/8847;
jTextField2.setText(String.valueOf(hasil));
  • Klik kanan jButton4 atau EUR – event- action – action performed – ketik source berikut.
float eur, hasil;
eur=Float.parseFloat(jTextField1.getText());
hasil=eur/11397;
jTextField2.setText(String.valueOf(hasil));
  • Klik kanan jTextField1 – event – action – action performed – ketik source berikut.
jTextField2.setText(jTextField1.getText());
  • Klik kanan bean Pattern – bean Info editor.
  • Pada method, EventSource dan Bean centang Get From Introspection. Sedangkan pada properties – klik kanan – exclude all – pilih valuta – centang include bean info.
  • Lakukan Build Project.
  • Pilih menu Tools – Pallete Manager – Swing/AWT Components – new category – ketik nama category yang kamu inginkan (contoh: matauang) – add From Project – carilah nama project yang kamu buat tadi (contoh: javaLibrary1) – next – newJpanel – next – matauang – finish.
  • Buatlah new JFrame Form pada project baru. Pada jendela properties cari nama “matauang” lalu tarik newJpanel kedalam form.
  • Run File. Inilah hasil akhirnya.

Jumat, 18 Mei 2012

JDBC dan MySQL dengan NetBeans (Part 1)


Pada tutorial ini kita baca tentang cara membuat Connection, trus cara bikin Statement, and cara bikin ResultSet. bingung? ah gak perlu kawatir, dulu juga saya bingung. tapi setelah baca tutorial ini, pasti gak kan ada kata bingung… let’s GO!!!!!!!

java.sql.Connection

sebelum kita mengelola database pada MySQL kita perlu membuat terlebih dahulu sebuah koneksi yang dalam java dekenal dengan java.sql.Connection.  tapi sebelumnya kita harus menentukan sebuah driver setiap DBMS yang akan kita gunakan. karena kita menggunakan DBMS MySQL, maka kita harus membuat instansiasi dari Driver milik MySQL. dan masalahnya, java tidak menyediakan driver untuk MySQL, sehingga kita harus mendownload driver MySQL dari situs resmi MySQL. tapi tenang saja, karena kita pake Netbeans, semuanya telah tersedia, hahahaha….
untuk memasukkan sebuah library untuk drriver MySQL pada netbeans gampang saj. caranya klik kanan pada library milik project yang akan kita gunakan lalu pilih add library :
image
setelah itu cari library MySQL JDBC Driver lalu klik tombol add library :
image
sekarang bisa dilihat kalo MySQL JDBC Driver telah ada di library project yang akan kita buat :
image
setelah itu buat sebuah class untuk koneksi (jika anda belum tahu cara membuat koneksi, silahkan lihat kembali tutorial MySQL dan Netbeans bagian 1) :
01import com.mysql.jdbc.Driver;
02import java.sql.Connection;
03import java.sql.DriverManager;
04import java.sql.SQLException;
05 
06public class Koneksi {
07 
08    private static Connection koneksi;
09 
10    public static Connection getConnection() throws SQLException {
11        if (koneksi == null) {
12            // panggil Driver MySQL
13            new Driver();
14            // buat koneksi
15            koneksi = DriverManager.getConnection("jdbc:mysql://localhost:3306/netbeans", "username", "password");
16        }
17        return koneksi;
18    }
19 
20    public static void main(String args[]) {
21        try {
22            getConnection();
23            System.out.println("Koneksi Berhasil");
24        } catch (SQLException ex) {
25            System.err.println("Koneksi Gagal");
26        }
27    }
28}
setelah itu coba running, jika berhasil maka akan mengeluarkan tulisan “Koneksi Berhasil”, jika gagal, maka akan keluar tulisan “Koneksi Gagal”. nach sekarang saya akan anggap koneksi berhasil. kalo gagal, pasti ada yang salah dengan yang anda ketikkan, ulangi lagi sampai berhasil….

java.sql.Statement

nah sekarang kita akan masuk ke proses INSERT, UPDATE, DELETE pada database. caranya kita harus membuat sebuah Statement, lalu dengan statement tersebut kita bisa membuat proses eksekusi INSERT, UPDATE, dan DELETE. namun tak bisa mengeksekusi proses SELECT karena proses tersebut mengembalikan nilai, makanya nanti kita akan bahas prose SELECT di subbab selanjutnya.
untuk membuat Statement, kita cukup memanggil metode createStatement() milik Connection. ini contohnya :
1Connection koneksi = ....
2Statement statement = koneksi.createStatement();</code>
sedangkan untuk melakukan proses eksekusi instruksi SQL, kita gunakan metode executeUpdate(“PERINTAH SQL”) milik Statement, contohnya kita akan mencoba membuat Statement untuk eksekusi perintah INSERT :
01import java.sql.SQLException;
02import java.sql.Statement;
03 
04public class InsertRecord {
05 
06    public static void main(String args[]) throws SQLException {
07        Statement statement = Koneksi.getConnection().createStatement();
08        statement.executeUpdate("INSERT INTO MAHASISWA " +
09                "VALUES (" +
10                "'10106031','Eko Kurnaiwan Khannedy','1988-12-29'" +
11                ");");
12 
13        statement.close();
14    }
15}
setelah di eksekusi, maka ini hasilnya :
image
sekarang kita coba melakukan proses UPDATE :
01import java.sql.SQLException;
02import java.sql.Statement;
03 
04public class UpdateRecord {
05 
06    public static void main(String args[]) throws SQLException {
07        Statement statement = Koneksi.getConnection().createStatement();
08        statement.executeUpdate("UPDATE MAHASISWA " +
09                "SET " +
10                "NAMA = 'Nesia Oktiana' ," +
11                "TANGGAL_LAHIR = '1988-10-04' " +
12                "WHERE " +
13                "NIM = '10106031';");
14        statement.close();
15    }
16}
setelah dieksekusi maka ini hasilnya :
image
sekarang kita coba proses DELETE :
01import java.sql.SQLException;
02import java.sql.Statement;
03 
04public class DeleteRecord {
05 
06    public static void main(String args[]) throws SQLException {
07        Statement statment = Koneksi.getConnection().createStatement();
08        statment.executeUpdate("DELETE FROM MAHASISWA " +
09                "WHERE NIM = '10106031';");
10        statment.close();
11    }
12}
setelah dieksekusi maka ini hasilnya :
image
ternyata gampangkan membuat koneksi dan melakukan proses INSERT UPDATE dana DELETE di Java. ;)

java.sql.ResultSet

seperti janji saya, sekarang kita akan belajar bagaimana melakukan proses SELECT di Java. hmmmm gampang aja, pertama buat Connection, llau buat Statement lalu buat ResultSet, caranya seperti ini :
1Connection koneksi = ...
2Statement statement = koneksi.createStatement();
3ResultSet result = statement.executeQuery("SELECT ...");
setelah itu untuk mendapatkan datanya gunakan metode get[TipeData](“NAMA_KOLOM”) milik ResultSet. untuk lebih jelasnya sekarang kita akan mencoba menampilkan seluruh data pada tabel Mahiswa yang ada pada database NETBEANS:
01import java.sql.Date;
02import java.sql.ResultSet;
03import java.sql.SQLException;
04import java.sql.Statement;
05 
06public class SelectRecord {
07 
08    public static void main(String args[]) throws SQLException {
09        Statement statement = Koneksi.getConnection().createStatement();
10 
11        statement.executeUpdate("INSERT INTO MAHASISWA VALUES ('1','A','1988-12-29')");
12        statement.executeUpdate("INSERT INTO MAHASISWA VALUES ('2','B','1988-12-29')");
13        statement.executeUpdate("INSERT INTO MAHASISWA VALUES ('3','C','1988-12-29')");
14        statement.executeUpdate("INSERT INTO MAHASISWA VALUES ('4','D','1988-12-29')");
15        statement.executeUpdate("INSERT INTO MAHASISWA VALUES ('5','E','1988-12-29')");
16 
17        ResultSet result = statement.executeQuery("SELECT * FROM MAHASISWA");
18 
19        String nim;
20        String nama;
21        Date tanggalLahir;
22        int index = 1;
23 
24        while (result.next()) {
25            nim = result.getString("NIM");
26            nama = result.getString("NAMA");
27            tanggalLahir = result.getDate("TANGGAL_LAHIR");
28 
29            System.out.println("Mahasiswa Ke-" + index);
30            System.out.println("Nim : " + nim);
31            System.out.println("Nama : " + nama);
32            System.out.println("Tanggal Lahir : " + tanggalLahir);
33            System.out.println();
34            index++;
35        }
36        result.close();
37        statement.close();
38    }
39}
setelah dieksekusi, maka akan menghasilkan output seperti ini :
Mahasiswa Ke-1
Nim : 1
Nama : A
Tanggal Lahir : 1988-12-29
Mahasiswa Ke-2
Nim : 2
Nama : B
Tanggal Lahir : 1988-12-29
Mahasiswa Ke-3
Nim : 3
Nama : C
Tanggal Lahir : 1988-12-29
Mahasiswa Ke-4
Nim : 4
Nama : D
Tanggal Lahir : 1988-12-29
Mahasiswa Ke-5
Nim : 5
Nama : E
Tanggal Lahir : 1988-12-29
sekarang akan saya beritahu apa itu metode next() milik ResultSet. metode next() merupakan metode yang digunakan untuk mengecek apakah ada record lagi selain pada posisi index yang saat ini (pada awalnya posisi index ResultSet adalah 0 (nol)) jika ada maka index akan loncat kedepan misal dari 0 menjadi 1 dan akan mengembalikan nilai true, tetapi jika tak ada maka index tetap disitu dan akan mengembalikan nilai false;
selain itu perlu diketahui, bahwa class Statement dan ResultSet serta Connection memiliki metode yang bernama metode close(). metode ini merupakan metode yang digunakan untuk menutup. misal ketika Satement kita panggil metode close() nya maka Statement tersebut akan ditutup, sehingga koneksi ke MySQL akan terputus dan dari memori akan dibapus. jadi metode close() harus selalu dipanggil jika proses telah selesai, karena jika tidak maka akan terjadi penumpukan memori…..
 
see you at next tutorial

JDBC dan MySQL dengan NetBeans (Part 2)

image

java.sql.Connection

sebelum kita mengelola database pada MySQL kita perlu membuat terlebih dahulu sebuah koneksi yang dalam java dekenal dengan java.sql.Connection.  tapi sebelumnya kita harus menentukan sebuah driver setiap DBMS yang akan kita gunakan. karena kita menggunakan DBMS MySQL, maka kita harus membuat instansiasi dari Driver milik MySQL. dan masalahnya, java tidak menyediakan driver untuk MySQL, sehingga kita harus mendownload driver MySQL dari situs resmi MySQL. tapi tenang saja, karena kita pake Netbeans, semuanya telah tersedia, 

untuk memasukkan sebuah library untuk drriver MySQL pada netbeans gampang saj. caranya klik kanan pada library milik project yang akan kita gunakan lalu pilih add library :

setelah itu cari library MySQL JDBC Driver lalu klik tombol add library :
image
sekarang bisa dilihat kalo MySQL JDBC Driver telah ada di library project yang akan kita buat :
image
setelah itu buat sebuah class untuk koneksi (jika anda belum tahu cara membuat koneksi, silahkan lihat kembali tutorial MySQL dan Netbeans bagian 1) :

import com.mysql.jdbc.Driver;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class Koneksi {

    private static Connection koneksi;

    public static Connection getConnection() throws SQLException {
        if (koneksi == null) {
            // panggil Driver MySQL
            new Driver();
            // buat koneksi
            koneksi = DriverManager.getConnection("jdbc:mysql://

            localhost:3306/netbeans", "username", "password");
        }
        return koneksi;
    }

    public static void main(String args[]) {
        try {
            getConnection();
            System.out.println("Koneksi Berhasil");
        } catch (SQLException ex) {
            System.err.println("Koneksi Gagal");
        }
    }
}
 
setelah itu coba running, jika berhasil maka akan mengeluarkan tulisan “Koneksi Berhasil”, jika gagal, maka akan keluar tulisan “Koneksi Gagal”. nach sekarang saya akan anggap koneksi berhasil. kalo gagal, pasti ada yang salah dengan yang anda ketikkan, ulangi lagi sampai berhasil….

java.sql.Statement

nah sekarang kita akan masuk ke proses INSERT, UPDATE, DELETE pada database. caranya kita harus membuat sebuah Statement, lalu dengan statement tersebut kita bisa membuat proses eksekusi INSERT, UPDATE, dan DELETE. namun tak bisa mengeksekusi proses SELECT karena proses tersebut mengembalikan nilai, makanya nanti kita akan bahas prose SELECT di subbab selanjutnya.
untuk membuat Statement, kita cukup memanggil metode createStatement() milik Connection. ini contohnya :
Connection koneksi = ....
Statement statement = koneksi.createStatement();</code>
sedangkan untuk melakukan proses eksekusi instruksi SQL, kita gunakan metode executeUpdate(“PERINTAH SQL”) milik Statement, contohnya kita akan mencoba membuat Statement untuk eksekusi perintah INSERT :

import java.sql.SQLException;
import java.sql.Statement;

public class InsertRecord {

    public static void main(String args[]) throws SQLException {
        Statement statement = Koneksi.getConnection().createStatement();
        statement.executeUpdate("INSERT INTO MAHASISWA " +
                "VALUES (" +
                "'10106031','Eko Kurnaiwan Khannedy','1988-12-29'" +
                ");");

        statement.close();
    }
}
setelah di eksekusi, maka ini hasilnya :
image
sekarang kita coba melakukan proses UPDATE :

import java.sql.SQLException;
import java.sql.Statement;

public class UpdateRecord {

    public static void main(String args[]) throws SQLException {
        Statement statement = Koneksi.getConnection().createStatement();
        statement.executeUpdate("UPDATE MAHASISWA " +
                "SET " +
                "NAMA = 'Nesia Oktiana' ," +
                "TANGGAL_LAHIR = '1988-10-04' " +
                "WHERE " +
                "NIM = '10106031';");
        statement.close();
    }
}
setelah dieksekusi maka ini hasilnya :
image
sekarang kita coba proses DELETE :

import java.sql.SQLException;
import java.sql.Statement;

public class DeleteRecord {

    public static void main(String args[]) throws SQLException {
        Statement statment = Koneksi.getConnection().createStatement();
        statment.executeUpdate("DELETE FROM MAHASISWA " +
                "WHERE NIM = '10106031';");
        statment.close();
    }
}
setelah dieksekusi maka ini hasilnya :
image
ternyata gampangkan membuat koneksi dan melakukan proses INSERT UPDATE dana DELETE di Java. ;)

java.sql.ResultSet

seperti janji saya, sekarang kita akan belajar bagaimana melakukan proses SELECT di Java. hmmmm gampang aja, pertama buat Connection, llau buat Statement lalu buat ResultSet, caranya seperti ini :
Connection koneksi = ...
Statement statement = koneksi.createStatement();
ResultSet result = statement.executeQuery("SELECT ...");
setelah itu untuk mendapatkan datanya gunakan metode get[TipeData](“NAMA_KOLOM”) milik ResultSet. untuk lebih jelasnya sekarang kita akan mencoba menampilkan seluruh data pada tabel Mahiswa yang ada pada database NETBEANS:

import java.sql.Date;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class SelectRecord {

    public static void main(String args[]) throws SQLException {
        Statement statement = Koneksi.getConnection().createStatement();

        statement.executeUpdate("INSERT INTO MAHASISWA VALUES ('1','A','1988-12-29')");
        statement.executeUpdate("INSERT INTO MAHASISWA VALUES ('2','B','1988-12-29')");
        statement.executeUpdate("INSERT INTO MAHASISWA VALUES ('3','C','1988-12-29')");
        statement.executeUpdate("INSERT INTO MAHASISWA VALUES ('4','D','1988-12-29')");
        statement.executeUpdate("INSERT INTO MAHASISWA VALUES ('5','E','1988-12-29')");

        ResultSet result = statement.executeQuery("SELECT * FROM MAHASISWA");

        String nim;
        String nama;
        Date tanggalLahir;
        int index = 1;

        while (result.next()) {
            nim = result.getString("NIM");
            nama = result.getString("NAMA");
            tanggalLahir = result.getDate("TANGGAL_LAHIR");

            System.out.println("Mahasiswa Ke-" + index);
            System.out.println("Nim : " + nim);
            System.out.println("Nama : " + nama);
            System.out.println("Tanggal Lahir : " + tanggalLahir);
            System.out.println();
            index++;
        }
        result.close();
        statement.close();
    }
}
setelah dieksekusi, maka akan menghasilkan output seperti ini :
Mahasiswa Ke-1
Nim : 1
Nama : A
Tanggal Lahir : 1988-12-29
Mahasiswa Ke-2
Nim : 2
Nama : B
Tanggal Lahir : 1988-12-29
Mahasiswa Ke-3
Nim : 3
Nama : C
Tanggal Lahir : 1988-12-29
Mahasiswa Ke-4
Nim : 4
Nama : D
Tanggal Lahir : 1988-12-29
Mahasiswa Ke-5
Nim : 5
Nama : E
Tanggal Lahir : 1988-12-29
sekarang akan saya beritahu apa itu metode next() milik ResultSet. metode next() merupakan metode yang digunakan untuk mengecek apakah ada record lagi selain pada posisi index yang saat ini (pada awalnya posisi index ResultSet adalah 0 (nol)) jika ada maka index akan loncat kedepan misal dari 0 menjadi 1 dan akan mengembalikan nilai true, tetapi jika tak ada maka index tetap disitu dan akan mengembalikan nilai false;
selain itu perlu diketahui, bahwa class Statement dan ResultSet serta Connection memiliki metode yang bernama metode close(). metode ini merupakan metode yang digunakan untuk menutup. misal ketika Satement kita panggil metode close() nya maka Statement tersebut akan ditutup, sehingga koneksi ke MySQL akan terputus dan dari memori akan dibapus. jadi metode close() harus selalu dipanggil jika proses telah selesai, karena jika tidak maka akan terjadi penumpukan memori…..
tutorial berikutnya kita akan bahas tentang PrepareStatement

see you at next tutorial

MySQL dalam Netbeans

pada tutorial ini saya akan menjelaskan tentang mysql dalam Netbeans, bukan mysql dan java

maksunya?
maksud saya, sekarang kita akan belajar tentang mysql namun dengan menggunakan Netbeans. ok, kalo bingun mending langsung aja masuk ke tutorial.
seperti biasa, proses managemen database mencakup proses administrator seperti pembuatan database, pembuatan table, dan pembuatan user. dan juga proses peremajaan database. seperti proses INSERT, UPDATE, DELETE dan tak lupa juga proses menampilkan database yaitu SELECT
kita tidak akan belajar serius tentang proses adminidtrator disini. namun kita akan memfokuskan di proses peremajaan database.
MEMBUAT DATABASE
untuk membuat database dalam NetBeans, masuklah ke MySQL comand promp lalu ketikkan
CREATE DATABASE NAMA_DATABASE;
maka otomatis akan terbuat sebuah database, contoh kita buat database dengan nama database “NETBEANS” :
image
kalo proses pembuatan berhasil, maka akan ada tulisan QUERY OK. sekarang kita mulai masuk ke NetBeans
MEMBUAT KONEKSI
untuk membuat koneksi dalam Netbeans, pertama kita masuk dulu ke tab service :
image
setelah itu klik nanan pada Database, lalu pilih New Connection :
image
setelah itu masukkan akan keluar dialog seperti dibawah ini :
image
inilah nama host dengan lokasi server database MySQL, dan no portnya, juga nama databasenya yang tadi kita buat yaitu “NETBEANS”. setelah itu isi username dan password yang kita gunakan untuk mengakses database, lalu klik remember password agar kita tak perlu lagi konfirmasi ketika akan menggunakan koneksi seprti dibawah ini :
image
setelah itu klok ok :
image
klik Ok lagi.
image
setelah proses pembuatan koneksi berhasil, kita bisa melihat akan ada subtree baru yang terbuat dari hasil koneksi tadi. sekarang kita akan membuat table dan juga melakukan proses peremajaan.
sebelumnya klik kanan pada hasil subtree yang tadi kita buat lalu pilih Execute Comand :
image
maka akan terdapat editor baru untuk kita gunakan sebagai proses eksekusi kode SQL :
image
MEMBUAT TABEL
untuk membuat table dalam MySQL, gunakan kode seperti dibawah ini :
CREATE TABLE NAMA_TABLE(
    NAMA_KOLOM TIPE_DATA KETERANGAN,
    NAMA_KOLOM TIPE_DATA KETERANGAN
);

misal kita akan membuat sebuah table MAHASISWA dengan kolom NIM, NAMA, TANGGAL_LAHIR :
image
setelah itu klik tombol seperti pada gambar dibawah ini untuk mengeksekusi skrip diatas :
image
setelah itu, maka sekarang telah terbentuk sebuah table dalam database NETBEANS yang bernama MAHASISWA, anda bisa melimelihatnya pada subtree koneksi yang tadi dibuat :
image
jika tidak keluar, coba klik kanan lalu klik Refresh.
MEMASUKKAN DATA
sekarang kita akan melakukan proses pemasukkan data pada table yang tadi kita buat. untuk memassukkan data gunakan :
INSERT INTO NAMA_TABLE
VALUES (
    ‘NILAI KOLOM 1′,
    ‘NILAI KOLOM 2′
);

misal kita akan memasukkan data pada tabel MAHASISWA yang tadi kita buat :
image
setelah itu klik tombol eksekusi, maka tabel MAHASISWA sekarang akan terdapat sebuah record (baris) yang bernilai seperti yang tadi kita masukkan.
MENAMPILKAN DATA
pada step sebelumnya kita telah memasukkan data, namun kita belum tahu apakah data yang tadi kita masukkan berhasil atau tidak, makanya kita perlu menampilkan seluruh data dalam tabel MAHASISWA tadi. untuk menampilkan tabel gunakan :

SELECT NAMA_KOLOM, NAMA_KOLOM
FROM NAMA_TABLE;

atau, jika kita akan menampilkan seluruh kolom gunakan :
SELECT *
FROM NAMA_TABLE;

misal kita akan menampilkan seluruh data dalam tabel MAHASISWA :
image
setelah dieksekusi, maka akan muncul tabel seperti dibawah ini :
image
sekarang bisa kita liat bahwa proses INSERT tadi telah berhasil.
MENGUBAH DATA
selain proses INSERT, kita juga sering melalukan proses perubahan data atau lebih dikenal dengan proses UPDATE. dan untuk melakukan proses UPDATE gunakan :
UPDATE NAMA_TABLE
    SET NAMA_KOLOM = ‘NILAI BARU’
WHERE
    KONDISI;

misal kita akan mengubah nama untuk mahasiswa dengan nim 10106031 menjadi Nesia Oktiana :
image
sekarang data dalam table akan berubah seperti dibawah ini :
image
MENGHAPUS DATA
selain proses INSERT, UPDATE, kita juga pasti akan melakukan proses penghapusan data yang telah tidak digunakan atau dikenal dengan nama proses DELETE. dan untuk melakukan proses tersebut kita gunakan :

DELETE FROM NAMA_TABLE
WHERE
    KONDISI;

atau jika kita akan akan menghapus seluruh data dalam table :

DELETE FROM NAMA_TABLE;
misal kita akan menghapus data pada tabel MAHASISWA dengan nim 10106031 :
image
sekarang kita tidak akan melihat data mahasiswa dengan nim 10106031 karena telah dihapus dari tabel :
image
akhirnya selesai juga tutorial bagian 2. nanti kita lanjutkan tutorial tentang JDBC dengan MySQL + NetBeans, tunggu aja ok!!!
see you at next tutorial…

Kamis, 19 April 2012

Membuat Aplikasi GUI-Database Menggunakan Java (Netbean 6.9.1)

Sekarang gw bakal tulisin cara untuk membuat aplikasi GUI. Tutorial ini bisa diliat di situs netbean.org, dengan semua credit buat pembuat tutorialnya. 
Jadi, dengan database kemarin, yaitu yang ini:


Dapat di-generate langsung sebuah aplikasi GUI. Cara ini sebenernya gak terlalu disarankan, coz dikhawatirkan konsep Objek Oriented bakal gak dipahamin banget, apalagi kalo sampe perlu dibuat sequence diagram ma class diagramnya. Bakalan jadi kacau. Coz, ini sifatnya beneran code generate dan aplikatif banget. Apalagi pas di-generate, yang ke-generate itu modul view sekaligus insert ke basis data. Agak gak guna buat bikin tugas kuliah object oriented dari segi teknik ataupun programming, kecuali pas bikin tugas besarnya dengan kondisi dosennya agak malas2an gak mau periksa coding-an mahasiswanya :-D
Oke, cukup semua prakata dari gw, jadi hal pertama yang perlu kita lakukan seperti biasanya, bikin project baru di netbean. Buat sekarang, kita bikin default-nya netbean ajah. Jadi, pergi ke “File --> New Project”, pilih “Java Desktop Application” dan next ajah terus. Setelah Next, pilih “Database Application”



Dan muncul window pop-up lain, masukkan Database Connection dengan database yang MySQL, terus database-nya yang sebelumnya udah kita bikin, yaitu “studentrecord”.


Lihat? Ada 2 bagian kolom di sana. Kolom yang sebelah kanan, itu kolom yang nantinya bisa kita tampilin di aplikasi desktop untuk kepentingan view data (ntar ditampilin dalam bentuk tabel di aplikasinya), kalo yang di sebelah kiri (defaultnya kosong), itu merupakan kolom yang tersedia di basis datanya. Kalo yang di kiri udah gak ada lagi apa2, artinya semua tabel di basis data udah kita tampilin. Sekarang, kita tampilin semuanya (biarin kayak defaultnya, dan langsung tekan Next). Ntar bakal keluar pop-up lagi kira-kira gini:


Sama ajah kayak yang pertama, Cuma yang sekarang data yang digunakan untuk kepentingan insert ke basis datanya. Kalo udah tekan finish, ntar bakal ada suatu GUI kira-kira gini:


Untuk yang gw kasi boundary merah, artinya itu kolom2 yang lo pilih pas waktu pemilihan pertama (lihat lagi ke atas), sedangkan yang bagian ijo, itu kolom-kolom yang lo pilih pada pemilihan kedua.
Nah, setelah itu, yang perlu lo lakukan tinggal jalanin ajah, bisa tekan segitiga arah samping warna ijo, atau tekan Shift+F6. Dengan data yang lo masukin sebelumnya, kira-kira bakal muncul gini:


Gimana?? Gampang kan?! Iya! Pastinya makin gampang. Sekarang tinggal lo eksplor deh penggunaan kelas hasil generate dan lain-lainnya untuk kepentingan presentasi aplikasi pembuatan tugas.

Oke.. segitu ajah, mas Bro. Kalo ada yang mau ditanyain, dan gw kebetulan bisa gw jawab, gw jawab deh :-D