laporan proyek akhir java
TRANSCRIPT
8/6/2019 Laporan Proyek Akhir Java
http://slidepdf.com/reader/full/laporan-proyek-akhir-java 1/30
LAPORAN PROYEKAKHIR JAVA
Oleh :
Desna Roswaty Hotimah (091331040)
Devi Rosauli (091331042)
Freddy Roy Ebsan (091331037)
PROGRAM STUDI TEKNIK TELEKOMUNIKASI
JURUSAN TEKNIK ELEKTRO
POLITEKNIK NEGERI BANDUNG
2011
8/6/2019 Laporan Proyek Akhir Java
http://slidepdf.com/reader/full/laporan-proyek-akhir-java 2/30
I. Tujuan
Tujuan dari proyek akhir ini adalah merancang suatu sistem atauaplikasi yang
diharapkan dapat dipergunakan untuk mengupdate data barang yang ada pada sebuah
toko
II. Landasan Teori
1. MySQL
MySQL sebenarnya merupakan turunan salah satu konsep utama dalam basisdata
yang telah ada sebelumnya; SQL (Structured Query Language). SQL adalah sebuah
konsep pengoperasian basisdata, terutama untuk pemilihan atau seleksi dan pemasukan
data, yang memungkinkan pengoperasian data dikerjakan dengan mudah secara otomatis.
Pembicaraan mengenai MySQL tidak akan terlepas dari istilah basis data
(database). Database adalah sekumpulan tabel yang saling berhubungan satu sama lain.
Menurut C.J. Date, database adalah sistem terkomputerisasi yang tujuan utamanya adalah
memelihara informasi dan membuat informasi tersedia saat dibutuhkan.
Kehandalan suatu sistem basisdata (DBMS) dapat diketahui dari cara kerja
pengoptimasi-nya dalam melakukan proses perintah-perintah SQL yang dibuat oleh
pengguna maupun program-program aplikasi yang memanfaatkannya. Sebagai peladen
basis data, MySQL mendukung operasi basisdata transaksional maupun operasi basisdata
non-transaksional. Pada modus operasi non-transaksional, MySQL dapat dikatakan unggul
dalam hal unjuk kerja dibandingkan perangkat lunak peladen basisdata kompetitor
lainnya. Namun demikian pada modus non-transaksional tidak ada jaminan atas
reliabilitas terhadap data yang tersimpan, karenanya modus non-transaksional hanya
cocok untuk jenis aplikasi yang tidak membutuhkan reliabilitas data seperti aplikasi
blogging berbasis web (wordpress), CMS, dan sejenisnya. Untuk kebutuhan sistem yang
ditujukan untuk bisnis sangat disarankan untuk menggunakan modus basisdata
transaksional, hanya saja sebagai konsekuensinya unjuk kerja MySQL pada modus
transaksional tidak secepat unjuk kerja pada modus non-transaksional.
MySQL memiliki beberapa keistimewaan, antara lain :
8/6/2019 Laporan Proyek Akhir Java
http://slidepdf.com/reader/full/laporan-proyek-akhir-java 3/30
1. Portabilitas. MySQL dapat berjalan stabil pada berbagai sistem operasi seperti
Windows, Linux, FreeBSD, Mac Os X Server, Solaris, Amiga, dan masih banyak lagi.
2. Perangkat lunak sumber terbuka. MySQL didistribusikan sebagai perangkat lunak
sumber terbuka, dibawah lisensi GPL sehingga dapat digunakan secara gratis.
3. Multi-user. MySQL dapat digunakan oleh beberapa pengguna dalam waktu yang
bersamaan tanpa mengalami masalah atau konflik.
4. 'Performance tuning', MySQL memiliki kecepatan yang menakjubkan dalam
menangani query sederhana, dengan kata lain dapat memproses lebih banyak SQL per
satuan waktu.
5. R agam tipe data. MySQL memiliki ragam tipe data yang sangat kaya, seperti signed /
unsigned integer, float, double, char, text, date, timestamp, dan lain-lain.
6. Perintah dan Fungsi. MySQL memiliki operator dan fungsi secara penuh yang
mendukung perintah Select dan Where dalam perintah (query).
7. K eamanan. MySQL memiliki beberapa lapisan keamanan seperti level subnetmask,
nama host, dan izin akses user dengan sistem perizinan yang mendetail serta sandi
terenkripsi.
8. Skalabilitas dan Pembatasan. MySQL mampu menangani basis data dalam skala
besar, dengan jumlah rekaman (records) lebih dari 50 juta dan 60 ribu tabel serta 5
milyar baris. Selain itu batas indeks yang dapat ditampung mencapai 32 indeks pada
tiap tabelnya.
9. K onektivitas. MySQL dapat melakukan koneksi dengan klien menggunakan protokol
TCP/IP, Unix soket (UNIX), atau Named Pipes (NT).
10. Lokalisasi. MySQL dapat mendeteksi pesan kesalahan pada klien dengan
menggunakan lebih dari dua puluh bahasa. Meski pun demikian, bahasa Indonesia
belum termasuk di dalamnya.
11. Antar Muka. MySQL memiliki antar muka (interface) terhadap berbagai aplikasi dan
bahasa pemrograman dengan menggunakan fungsi API (Application Programming
Interface).
12. K lien dan Peralatan. MySQL dilengkapi dengan berbagai peralatan (tool)yang dapat
digunakan untuk administrasi basis data, dan pada setiap peralatan yang ada disertakan
petunjuk online.
13. Struktur tabel. MySQL memiliki struktur tabel yang lebih fleksibel dalam menangani
ALTER TABLE, dibandingkan basis data lainnya semacam PostgreSQL ataupun
Oracle.
8/6/2019 Laporan Proyek Akhir Java
http://slidepdf.com/reader/full/laporan-proyek-akhir-java 4/30
Meskipun sebagian besar sistem database menggunakan SQL, namun sebagian
besar dari mereka juga memiliki ekstensi khusus yang hanya bisa digunakan di sistem
masing-masing. Namun demikian, perintah standar SQL seperti "Select", "Insert",
"Update", "Delete", "Create", dan "Drop" dapat digunakan untuk melakukan hampir
semua hal yang perlu dilakukan terhadap sebuah database.
Untuk membuat sebuah system database, kita memerlukan server untuk database
yang dalam hal ini saya menggunakan mysql yang sudah terpaket dalam program installer
XAMPP.
Untuk menggunakan aplikasi mysql ini kita harus terlebih dahulu masuk ke
direktori mysql pada path instalasi XAMPP yaitu di C:\xampp\mysql\bin kemudian login
dengan mengetikkan perintah atau kode berikut :
>> mysql -u root ±p
(simbol >> hanya sebagai penanda saja dalam tulisan ini dan tidak masuk dalam
kode/perintah yang diketikkan)dengan mengetikkan kode tersebut maka kita akan masuk
ke mysql dengan login sebagai root, dengan tampilan seperti gambar berikut.
Selanjutnya kita membuat data base baru misalkan kita beri nama ´lat_mysql´.
Maka untuk membuat database tersebut kita menggunakan perintah berikut :
>> create database lat_mysql;
Selanjutnya kita ketikkan perintah
>> show databases;untuk melihat apakah database yang kita buat tadi memang sudah
terbuat tidak ada error.
2. Java Database Connectuvity
Java Databa se Connectivit y merupakan suatu API (Application Programming
Interface) yang digunakan untuk Bahasa Pemrograman Java dengan tujuan untuk
mengakses suatu d ataba se. JDBC memungkinkan untuk berinteraksi dengan suatu d ata
source lain melalui Java 2 Platform, S tand ard E d ition V ersion (J2SE). Implementasinya
melalui koneksi ke ODBC (Open Database Connectivity).
API adalah sebuah interface atau antarmuka yang diimplementasikan oleh suatu
program S/W sehingga memungkinkan untuk berinteraksi dengan S/W lain.
8/6/2019 Laporan Proyek Akhir Java
http://slidepdf.com/reader/full/laporan-proyek-akhir-java 5/30
Gambar 1. Koneksi Database dan Java
Koneksi antara M dan Java
3. Graphi al User Interface
GUI atau kepa jangan dar i Graphical User Interface merupakan salah satu model
interaksi antara manusia dan komputer.
Fungsi GUI
Dar i pemahaman tentang GUI sebelumnya, fungsi fungsi GUI dalam dunia teknologi dan
informasi saat ini sangat beragam. Ber ikut beberapa fungsi dar i penggunaan GUI dalam
dunia Iptek khususnya komputer :
(1). Pointing device dengan perangkat berupa mouse
(2). Memilik i fungsi sebagai plug and play, yang mana memudahkan user dalam
menginstall dan uninstall hardware/sofware (sinkronisasi)
(3). Membuat sof tware-sof tware yang menuntut aplikasi dalam komputer user yang dapat
digunakan untuk kegiatan user dalam proses seper ti menulis text, spreadsheet. sound,
graphic dan lain-lain
8/6/2019 Laporan Proyek Akhir Java
http://slidepdf.com/reader/full/laporan-proyek-akhir-java 7/30
label1. setBounds(100,10,100,20);label1. setFore g r ound (Color .MAGENTA);
label1. setFont(new Font("Calibr i",Font.BOLD,24));label1. setT e xt(" WHO ARE YOU ");
g etCont entPane().add (buttonAdmin);
buttonAdmin. setBounds(40,35,100,20);
g etCont entPane().add (buttonS i swa);buttonS i swa. setBounds(110,35,100,20);
}
pr ivat e cla ss Hand l er impl ement s ActionLi st ener {
public void actionP er formed (ActionEvent event) {
if( event.g et S ource().equal s(buttonAdmin)) {
Pa ssword ps = new Pa ssword ();
ps.Komponen();
setVi sibl e(fal se );
} el se if ( event.g et S ource().equal s(buttonS i swa)){
JO ptionPane. show M essag e Dialog(null,"Lihat yang ini aja ya Gan!!!");
setVi sibl e(fal se );nonadmin t s = new nonadmin();
t s.tampil();
setVi sibl e(fal se ); }
}
}
public static void main( S t r ing[] ar g s ) {
tampilanawal f r ame = new tampilanawal();
f r ame.Komponen();
}
}
Program untuk Meminta Password User
impor t javax. swing.*;
impor t java.awt.*;
impor t java.awt.event.*;
public cla ss Pa ssword e xt ends JF r ame {
JLabel label1, label2;
8/6/2019 Laporan Proyek Akhir Java
http://slidepdf.com/reader/full/laporan-proyek-akhir-java 8/30
JT e xtFiel d t e xt; JPa ssword Fiel d pswrd ;
JButton OK; public Pa ssword () {
super ("LOGIN DULU GAN!");
label1 = new JLabel("U S ERNAME");
label2 = new JLabel ("PASS WORD");t e xt = new JT e xtFiel d (20);
pswrd = new JPa ssword Fiel d (20);
OK = new JButton("OK");
set S ize(300,200);
setDe faultClo seO per ation(JF r ame.EXIT_ON_CLOS E);
setLocation(500,200);
setVi sibl e(t rue );
}void Komponen(){
g etCont entPane().add (label1);label1. setBounds(10,10,75,20);
g etCont entPane().add (label2);label2. setBounds(10,35,75,20);
g etCont entPane().add (t e xt);t e xt. setBounds(100,10,75,20);
g etCont entPane().add ( pswrd );
pswrd . setBounds(100,35,75,20);
g etCont entPane().add (OK);
OK. setBounds(100,60,75,20);
Hand l er hand l er = new Hand l er ();
OK.add ActionLi st ener (hand l er );
g etCont entPane(). setLa yout(null);
}
pr ivat e cla ss Hand l er impl ement s ActionLi st ener {
public void actionP er formed (ActionEvent evt) {
if( evt.g etActionCommand ().equal s("OK")) { S t r ing namaP engg una = t e xt.g etT e xt();
S t r ing kataK unci = new S t r ing( pswrd .g etPa ssword ());
if(kataK unci.equal s("lazio")&&
namaP engg una.equal s IgnoreCa se("admin")) {
JO ptionPane. show M essag e Dialog(null," S ELAMAT
DATANG!","BERHAS IL"+
"!",JO ptionPane.INFORMATION_ME SS AGE);
M enuGUI ad = new M enuGUI();
setVi sibl e(fal se );
8/6/2019 Laporan Proyek Akhir Java
http://slidepdf.com/reader/full/laporan-proyek-akhir-java 9/30
} el se JO ptionPane. show M essag e Dialog(null,"U ser name d an Pa ssword tid ak
sesuai","GAGAL"+"!",JO ptionPane.INFORMATION_ME SS AGE);
}
}
}
public static void main( S t r ing[] ar g s ) {
Pa ssword f r ame = new Pa ssword ();
f r ame.Komponen();
}
}
Program untuk Tampilan Home
impor t java.awt.*;
impor t java.awt.event.*;
impor t javax. swing.*;
impor t javax. swing.tabl e.*;
impor t java. sql.*;
public cla ss M enuGUI e xt ends JF r ame impl ement s ActionLi st ener {
public static void main ( S t r ing[] ar g s ) {
M enuGUI a pp = new M enuGUI();
}
public M enuGUI (){ super ("RDD S HOP a ye!!"); JM enu Bar menu = new JM enu Bar ();
// JM enu submnFil e = new JM enu ("Fil e");
// submnFil e. setMnemonic('F');
JM enu submnData = new JM enu ("Fil e"); submnData. setMnemonic('M');
// JM enu submnLa p = new JM enu ("La por an");
// submnLa p. setMnemonic('L');
JM enu submnHl p = new JM enu ("Bant uan");
submnHl p. setMnemonic('B');
JM enu It em KtB = new JM enu It em("Del et e Data");
JM enu It em DtB = new JM enu It em("In ser t Data");
JM enu It em DtU = new JM enu It em("U pd at e Data");
JM enu It em xxx = new JM enu It em("Car i Data");
8/6/2019 Laporan Proyek Akhir Java
http://slidepdf.com/reader/full/laporan-proyek-akhir-java 10/30
JM enu It em LKtB = new JM enu It em("Daftar Katagor i Buk u"); JM enu It em LDtB = new JM enu It em("Daftar Buk u");
JM enu It em LDtU = new JM enu It em("Daftar U ser ");
JM enu It em Abt = new JM enu It em("About...");
JM enu It em S l s = new JM enu It em(" Sel esai");
KtB.add ActionLi st ener (thi s );
DtB.add ActionLi st ener (thi s );
DtU.add ActionLi st ener (thi s );
xxx.add ActionLi st ener (thi s );
LKtB.add ActionLi st ener (thi s );
LDtB.add ActionLi st ener (thi s );
LDtU.add ActionLi st ener (thi s );
Abt.add ActionLi st ener (thi s );
S l s.add ActionLi st ener (thi s );
// menu.add ( submnFil e );
// submnFil e.add ( S l s );menu.add ( submnData);
submnData.add (KtB);
submnData.add (DtB);
submnData.addSepar ator ();
submnData.add (DtU);
submnData.add (xxx);
// menu.add ( submnLa p );
// submnLa p.add (LKtB);
// submnLa p.add (LDtB);
// submnLa p.addSepar ator ();
// submnLa p.add (LDtU);
menu.add ( submnHl p ); submnHl p.add (Abt);
setJM enu Bar ( menu );
set S ize(400,300);
show(); setDe faultClo seO per ation(JF r ame.EXIT_ON_CLOS E); }
public void actionP er formed (ActionEvent ev){
S t r ing s=ev.g etActionCommand ();
if ( s=="Del et e Data"){
ha pusd ata a pp = new ha pusd ata();
} el se if( s=="U pd at e Data"){
upd at ed ata a pp = new upd at ed ata();
8/6/2019 Laporan Proyek Akhir Java
http://slidepdf.com/reader/full/laporan-proyek-akhir-java 11/30
} el se if( s=="In ser t Data"){ in ser t d ata a pp = new in ser t d ata();
} el se if( s=="Car i Data"){ Car iData a pp = new Car iData();
}// el se if( s=="Daftar Buk u"){
//La p Buk u a pp = new La p Buk u();
// }el se if( s=="Daftar U ser "){ // La pU ser a pp = new La pU ser ();
// }el se if( s==" Sel esai"){
// if (JO ptionPane. showConfirm Dialog(null,"Yakin ingin
k el uar A plika si?","Konfirma si...",JO ptionPane.YE S _NO_OPTION)==0){
// Syst em.e xit(0);
// }
// }
el se if( s=="About..."){
JO ptionPane. show M essag e Dialog(null,"Br avo Lazio,"+"\nGood
Luck!","Bant uan",JO ptionPane.INFORMATION_ME SS AGE); }
} // public void xxc (){
// cancel.add ActionLi st ener (new ActionLi st ener (){ // public void actionP er formed (ActionEvent ae ){
// M enuGUI vvv = new M enuGUI(); // setVi sibl e(fal se );
// }
// }
}
Program untuk Insert Data pada Database ³test´
impor t java.io.*;
impor t javax. swing.*;
impor t java.awt.*;
impor t java.awt.event.*;
8/6/2019 Laporan Proyek Akhir Java
http://slidepdf.com/reader/full/laporan-proyek-akhir-java 12/30
impor t java. sql.*;
public cla ss in ser t d ata e xt ends JF r ame{
pr ivat e JLabel IbKode = new JLabel ("Nama_bar ang :"),
IbM enu = new JLabel ("Kode _bar ang :"),
IbJ eni s = new JLabel ("J eni s _bar ang :"), IbHar ga = new JLabel ("Har ga_bar ang :");
pr ivat e JT e xtFiel d txtKode = new JT e xtFiel d (),
txtM enu = new JT e xtFiel d (),
txtHar ga = new JT e xtFiel d ();
pr ivat e JRad ioButton r b1 = new JRad ioButton ("Pakaian", t rue ),
r b2 = new JRad ioButton ("Alat Olahr aga",fal se );
pr ivat e JButton btnIn put = new JButton ("In put"),btnCancel = new JButton ("M enu");
pr ivat e JPanel panel = new JPanel ();
pr ivat e Connection kon = null; pr ivat e S tat ement sta = null;
pr ivat e Result Set rse = null;
in ser t d ata (){
super ("In put Data Bar ang");
settingKomponenGui ();
load Dr iver Db ();
ak siTombolIn put ();
ak siTombolCancel ();
}
pr ivat e void load Dr iver Db (){
t ry{
Cla ss.for Name(" com.mysql.jd bc.Dr iver ");
S t r ing d bup =
"jd bc:mysql://localho st/t est?user =r oot& pa ssword =";kon = Dr iver Manag er .g etConnection( d bup );
}cat ch (Exception e x) { e x. pr int S tackT r ace();}
}
public void ak siTombolIn put(){ btnIn put.add ActionLi st ener (new ActionLi st ener () {
public void actionP er formed (ActionEvent ae ) {
t ry {
S t r ing jeni s = "";
if ( r b1.i sSel ect ed ()){
jeni s = "Pakaian";
} el se{
8/6/2019 Laporan Proyek Akhir Java
http://slidepdf.com/reader/full/laporan-proyek-akhir-java 13/30
jeni s = "Alat Olahr aga"; }
sta = kon.creat eS tat ement();S t r ing sql = "IN S ERT INTO bar ang2 VALUE S
('"+txtKode.g etT e xt()+"',
'"+txtM enu.g etT e xt()+"','"+jeni s+"','"+txtHar ga.g etT e xt()+"')";
sta.e xecut eU pd at e ( sql);txtKode. setT e xt("");
txtM enu. setT e xt("");
txtHar ga. setT e xt("");
txtKode.requestFocus();
sta.clo se();
} cat ch (Exception e x){e x. pr int S tackT r ace ();}
}
});
}
void ak siTombolCancel (){ btnCancel.add ActionLi st ener (new ActionLi st ener (){
public void actionP er formed (ActionEvent ae ) { txtKode. setT e xt("");
txtM enu. setT e xt("");txtHar ga. setT e xt("");
txtKode.requestFocus(); M enuGUI ad = new M enuGUI();
setVi sibl e(fal se );
}
});
}
void settingKomponenGui () {
panel. setLa yout (null);
set S ize(380,280);
IbM enu. setBounds(40,60,120,20);
IbKode. setBounds(40,85,120,20);
IbJ eni s. setBounds(40,110,160,20); IbHar ga. setBounds(40,135,120,20);
txtM enu. setBounds(160,60,100,20);txtKode. setBounds(160,85,160,20);
ButtonGr oup btnGrp = new ButtonGr oup ();r b1. setBounds(160,110,80,20);r b2. setBounds(240,110,180,20);
btnGrp.add ( r b1);
btnGrp.add ( r b2);
txtHar ga. setBounds (160,135,100,20);
btnIn put. setBounds (100,190,80,20);
btnCancel. setBounds (190,190,80,20);
8/6/2019 Laporan Proyek Akhir Java
http://slidepdf.com/reader/full/laporan-proyek-akhir-java 14/30
panel.add (IbKode ); panel.add (IbM enu );
panel.add (IbJ eni s ); panel.add (IbHar ga);
panel.add (txtKode );
panel.add (txtM enu );
panel.add ( r b1); panel.add ( r b2);
panel.add (txtHar ga);
panel.add (btnIn put);
panel.add (btnCancel);
g etCont entPane().add ( panel);
setDe faultClo seO per ation(EXIT_ON_CLOS E);
setVi sibl e(t rue );
}
public static void main ( S t r ing[] ar g s ) { in ser t d ata f r ame K u = new in ser t d ata();
} }
Program untuk Edit Data pada Database ³test´
impor t javax. swing.*;
impor t java.awt.*;
impor t java.awt.event.*;
impor t java. sql.*;
impor t java.awt.*;
impor t java.awt.event.*;
impor t javax. swing.t e xt.*;
impor t javax. swing. plaf.*;
impor t javax. swing.event.*;
impor t javax.accessibilit y.*;
public cla ss upd at ed ata e xt ends JF r ame{
pr ivat e JLabel IbKode = new JLabel ("Kode Bar ang :"),
IbM enu = new JLabel ("Nama Bar ang :"),
IbJ eni s = new JLabel ("J eni s :"),
IbHar ga = new JLabel ("Har ga :");
8/6/2019 Laporan Proyek Akhir Java
http://slidepdf.com/reader/full/laporan-proyek-akhir-java 15/30
pr ivat e JT e xtFiel d txtKode = new JT e xtFiel d (),
txtM enu = new JT e xtFiel d (),
txtHar ga = new JT e xtFiel d ();
pr ivat e JRad ioButton r b1 = new JRad ioButton ("Pakaian", t rue ),
r b2 = new JRad ioButton ("Alat Olahr aga",fal se );
pr ivat e JButton btnU pd at e = new JButton (" upd at e"),
btnCancel = new JButton ("M enu");
pr ivat e JPanel panel = new JPanel ();
pr ivat e Connection kon = null;
pr ivat e S tat ement sta = null;
pr ivat e Result Set rse = null;
upd at ed ata (){
super ("U pd at e Data Bar ang");
settingKomponenGui ();
load Dr iver Db ();
ak siCar iKode();
ak siTombolCancel ();
ak siTombolU pd at e ();
}
pr ivat e void load Dr iver Db (){
t ry{
Cla ss.for Name(" com.mysql.jd bc.Dr iver ");
S t r ing d bup =
"jd bc:mysql://localho st/t est?user =r oot& pa ssword =";
kon = Dr iver Manag er .g etConnection( d bup );
}
cat ch (Exception e ) { e. pr int S tackT r ace();}
}
public void ak siCar iKode(){
8/6/2019 Laporan Proyek Akhir Java
http://slidepdf.com/reader/full/laporan-proyek-akhir-java 16/30
txtKode.add K ey Li st ener (new K ey Ad a pt er (){
public void k ey P ressed (K ey Event ev){
int tombol = ev.g etK eyCode();
if(tombol == 10){
t ry{
S t r ing sql = " S ELECT * FROM bar ang2
WHERE Kode _bar ang ='"+txtKode.g etT e xt()+"'";
//Result Set rse = sta.e xecut eQuery(" S ELECT
* FROM bar ang Where Kode _bar ang='"+txtKode.g etT e xt()+"'");
sta = kon.creat eS tat ement();
rse = sta.e xecut eQuery( sql);
if ( rse.ne xt()){
S t r ing menu = rse.g et S t r ing("nama");
int jeni s = rse.g etInt("kode");
S t r ing har ga =
rse.g et S t r ing("har ga");
// if(jeni s==0){
// r b1. set Sel ect ed (t rue );
// r b2. set Sel ect ed (fal se );
// }el se {
// r b1. set Sel ect ed (fal se );
// r b2. set Sel ect ed (t rue );
// }
txtM enu. setT e xt( menu );
txtHar ga. setT e xt(har ga);
txtKode. setEnabl ed (fal se );
sta.clo se();
btnU pd at e. setEnabl ed (fal se );
} el se{
JO ptionPane. show M essag e Dialog(null,"Kode Bar ang Tid ak Ad a!");
8/6/2019 Laporan Proyek Akhir Java
http://slidepdf.com/reader/full/laporan-proyek-akhir-java 17/30
txtKode.requestFocus();
btnU pd at e. setEnabl ed (fal se );
}
} cat ch (Exception e x){e x. pr int S tackT r ace();}
}
}
});
}
void ak siTombolCancel (){
btnCancel.add ActionLi st ener (new ActionLi st ener (){
public void actionP er formed (ActionEvent ae ) {
txtKode. setT e xt("");
txtM enu. setT e xt("");
txtHar ga. setT e xt("");
btnU pd at e. setEnabl ed (fal se );
txtKode.requestFocus();
txtKode. setEnabl ed (t rue );
M enuGUI ad = new M enuGUI();
setVi sibl e(fal se );
setVi sibl e(fal se );
}
});
}
public void ak siTombolU pd at e(){
btnU pd at e.add ActionLi st ener (new ActionLi st ener () {
public void actionP er formed (ActionEvent ae ) {
t ry {
S t r ing jeni s = "";
if ( r b1.i sSel ect ed ()){
jeni s = "Pakaian";
} el se{
8/6/2019 Laporan Proyek Akhir Java
http://slidepdf.com/reader/full/laporan-proyek-akhir-java 18/30
jeni s = "Alat Olahr aga";
}
sta = kon.creat eS tat ement();
S t r ing sql = "UPDATE bar ang2 S ET Nama_bar ang
= '"+txtM enu.g etT e xt()+"',J eni s _bar ang = '"+jeni s+"',Har ga_bar ang =
'"+txtHar ga.g etT e xt()+"' WHERE Kode _bar ang = '"+txtKode.g etT e xt()+"'";
// sta.e xecut eU pd at e("UPDATE bar ang2 S ET
Nama_bar ang = '"+txtM enu.g etT e xt()+"',J eni s _bar ang =
'"+jeni s+"',Har ga_bar ang = '"+txtHar ga.g etT e xt()+"' WHERE Kode _bar ang
= '"+txtKode.g etT e xt()+"'");
int ma suk = sta.e xecut eU pd at e ( sql);
if( ma suk==1){
txtKode. setT e xt("");
txtM enu. setT e xt("");
txtHar ga. setT e xt("");
txtKode.requestFocus();
txtKode. setEnabl ed (t rue );
btnU pd at e. setEnabl ed (fal se );
}
sta.clo se();
} cat ch (Exception e x){e x. pr int S tackT r ace ();}
}
});
}
void settingKomponenGui () {
panel. setLa yout (null);
set S ize(380,280);
setDe faultClo seO per ation(EXIT_ON_CLOS E);
IbKode. setBounds(40,60,120,20);
IbM enu. setBounds(40,85,120,20);
8/6/2019 Laporan Proyek Akhir Java
http://slidepdf.com/reader/full/laporan-proyek-akhir-java 19/30
IbJ eni s. setBounds(40,110,160,20);
IbHar ga. setBounds(40,135,120,20);
txtKode. setBounds(160,60,100,20);
txtM enu. setBounds(160,85,160,20);
txtHar ga. setBounds(160,135,100,20);
ButtonGr oup btnGrp = new ButtonGr oup ();
r b1. setBounds(160,110,80,20);
r b2. setBounds(240,110,180,20);
btnGrp.add ( r b1);
btnGrp.add ( r b2);
btnU pd at e. setBounds (100,190,80,20);
btnCancel. setBounds (190,190,80,20);
btnU pd at e. setEnabl ed (fal se );
panel.add (IbKode );
panel.add (IbM enu );
panel.add (IbJ eni s );
panel.add (IbHar ga);
panel.add (txtKode );
panel.add (txtM enu );
panel.add ( r b1);
panel.add ( r b2);
panel.add (txtHar ga);
panel.add (btnU pd at e );
panel.add (btnCancel);
g etCont entPane().add ( panel);
setVi sibl e(t rue );
}
public static void main ( S t r ing[] ar g s ) {
upd at ed ata f r amek u = new upd at ed ata();
}
8/6/2019 Laporan Proyek Akhir Java
http://slidepdf.com/reader/full/laporan-proyek-akhir-java 20/30
}
Program untuk Delete Data pada Database ³test´
impor t javax. swing.*;
impor t java.awt.*;
impor t java.awt.event.*;
impor t java. sql.*;
public cla ss ha pusd ata e xt ends JF r ame {
pr ivat e JLabel lbKode = new JLabel ("Nama Bar ang"),
lbM enu = new JLabel ("Kode Bar ang :"),lbJ eni s = new JLabel ("J eni s :"),
lbHar ga = new JLabel ("Har ga :");
pr ivat e JT e xtFiel d txtKode = new JT e xtFiel d (),
txtM enu = new JT e xtFiel d (),txtHar ga = new JT e xtFiel d ();
pr ivat e JRad ioButton r b1 = new JRad ioButton("Pakaian",t rue ),
r b2 = new JRad ioButton("Alat
Olahr aga",fal se );
pr ivat e JButton btnHa pus = new JButton("Ha pus"),
btnCancel = new JButton ("M enu");
pr ivat e JPanel panel = new JPanel ();
pr ivat e Connection kon = null;
pr ivat e S tat ement sta = null;
pr ivat e Result Set rse = null;
ha pusd ata() {
super ("Form Del et e Data M enu"); settingKomponenGui ();
load Dr iver Db ();ak siCar iKode ();
ak siTombolCancel ();ak siTombolHa pus ();
}
pr ivat e void load Dr iver Db (){
t ry{ Cla ss.for Name(" com.mysql.jd bc.Dr iver ");
S t r ing d bup =
"jd bc:mysql://localho st/t est?user =r oot& pa ssword =";
kon = Dr iver Manag er .g etConnection( d bup );
}
cat ch (Exception e x) { Syst em.out. pr intln("E rr or 1");
e x. pr int S tackT r ace();}
8/6/2019 Laporan Proyek Akhir Java
http://slidepdf.com/reader/full/laporan-proyek-akhir-java 21/30
}
public void ak siCar iKode (){ txtKode.add K ey Li st ener (new K ey Ad a pt er () {
public void k ey P ressed (K ey Event ev){
int tombol = ev.g etK eyCode ();
if (tombol == 10){ t ry {
S t r ing sql = " S ELECT * FROM bar ang2
WHERE Nama_bar ang='" + txtKode.g etT e xt() + "'";
sta = kon.creat eS tat ement();
rse = sta.e xecut eQuery( sql);
if ( rse.ne xt()) {
S t r ing menu =
rse.g et S t r ing("Nama_bar ang");
int jeni s = rse.g etInt
("J eni s _bar ang");S t r ing har ga = rse.g et S t r ing
("Har ga_bar ang");S t r ing kode =
rse.g et S t r ing("Kode _bar ang");
if(jeni s == 0){ r b1. set Sel ect ed (t rue );
r b2. set Sel ect ed (fal se );
}el se{
r b1. set Sel ect ed (fal se );
r b2. set Sel ect ed (t rue );
}
txtM enu. setT e xt ( menu );
txtHar ga. setT e xt (har ga);
sta.clo se();
txtKode. setEnabl ed (fal se );
btnHa pus. setEnabl ed (t rue );
btnCancel. setEnabl ed (t rue );
}el se {
JO ptionPane. show M essag e Dialog(null,"Kode Bar ang Tid ak Ad a Gan!!!");txtKode.requestFocus();
btnHa pus. setEnabl ed (fal se );
} }cat ch (Exception e ) {e. pr int S tackT r ace();Syst em.out. pr intln("E rr or 2");}
}
}
});
}
void ak siTombolCancel (){
btnCancel.add ActionLi st ener (new ActionLi st ener ()
8/6/2019 Laporan Proyek Akhir Java
http://slidepdf.com/reader/full/laporan-proyek-akhir-java 22/30
{ public void actionP er formed (ActionEvent ae ){
txtKode. setT e xt("");txtM enu. setT e xt("");
txtHar ga. setT e xt("");
txtKode. setEnabl ed (t rue );
txtKode.requestFocus();btnHa pus. setEnabl ed (fal se );
btnCancel. setEnabl ed (fal se );
M enuGUI ad = new M enuGUI();
setVi sibl e(fal se );
}
});
}
public void ak siTombolHa pus(){
btnHa pus.add ActionLi st ener (new ActionLi st ener (){ public void actionP er formed (ActionEvent ae ){
t ry { sta = kon.creat eS tat ement();
S t r ing sql2 = "DELETE FROM bar ang2 WHERE Nama_bar ang = '"+txtKode.g etT e xt()+"'";
int Ma suk = sta.e xecut eU pd at e( sql2);if ( Ma suk == 1){
txtKode. setT e xt("");
txtM enu. setT e xt("");
txtHar ga. setT e xt("");
txtKode. setEnabl ed (t rue );
txtKode.requestFocus();
btnHa pus. setEnabl ed (fal se );
btnCancel. setEnabl ed (fal se );
}
sta.clo se();
}cat ch(Exception e xc ) {e xc. pr int S tackT r ace ();
Syst em.out. pr intln("E rr or 3");}
}
}); }
void settingKomponenGui() { panel. setLa yout(null);
set S ize(380,280);
lbKode. setBounds(40,60,120,20);lbM enu. setBounds(40,85,120,20);
lbJ eni s. setBounds(40,110,160,20);
lbHar ga. setBounds(40,135,120,20);
txtKode. setBounds(160,60,100,20);
txtM enu. setBounds(160,85,160,20);
txtHar ga. setBounds(160,135,100,20);
8/6/2019 Laporan Proyek Akhir Java
http://slidepdf.com/reader/full/laporan-proyek-akhir-java 23/30
ButtonGr oup btnGrp = new ButtonGr oup ();
r b1. setBounds(160,110,80,20);r b2. setBounds(240,110,180,20);
btnGrp.add ( r b1);
btnGrp.add ( r b2);
btnHa pus. setBounds(100,190,80,20);
btnCancel. setBounds(190,190,80,20);
txtM enu. setEnabl ed (fal se );
txtHar ga. setEnabl ed (fal se );
btnCancel. setEnabl ed (fal se );
btnHa pus. setEnabl ed (fal se );
panel.add (lbKode );
panel.add (lbM enu ); panel.add (lbJ eni s );
panel.add (lbHar ga); panel.add (txtKode );
panel.add (txtM enu ); panel.add ( r b1);
panel.add ( r b2); panel.add (txtHar ga);
panel.add (btnHa pus );
panel.add (btnCancel);
g etCont entPane().add ( panel);
setDe faultClo seO per ation(EXIT_ON_CLOS E);
setVi sibl e(t rue );
}
public static void main ( S t r ing [] ar g s ){
ha pusd ata f r ame K u = new ha pusd ata();
}
}
Program untuk Search Data pada Database ³test´
impor t javax. swing.*;
impor t javax. swing.event.*;
impor t java.awt.*;
impor t java.awt.event.*;
impor t java. sql.*;
public cla ss Car iData e xt ends JF r ame{
8/6/2019 Laporan Proyek Akhir Java
http://slidepdf.com/reader/full/laporan-proyek-akhir-java 24/30
pr ivat e JLabel IbKode = new JLabel ("Kode Bar ang :"),
IbM enu = new JLabel ("Nama Bar ang :"), IbHar ga = new JLabel ("Har ga :");
pr ivat e JT e xtFiel d txtKode = new JT e xtFiel d (),
txtM enu = new JT e xtFiel d (),txtHar ga = new JT e xtFiel d ();
pr ivat e JPanel panel= new JPanel();
Car iData(){
super ("M encar i Data");
panel. setLa yout(null);
set S ize(360,160);
setDe faultClo seO per ation(EXIT_ON_CLOS E);
IbKode. setBounds(40,20,120,20); IbM enu. setBounds(40,45,120,20);
IbHar ga. setBounds(40,70,120,20);txtKode. setBounds(160,20,160,20);
txtM enu. setBounds(160,45,160,20);txtHar ga. setBounds(160,70,160,20);
txtKode.add K ey Li st ener (new K ey Ad a pt er () {
public void k ey P ressed (K ey Event e ){
kode _k ey P ressed ( e );
}
});
panel.add (IbKode );
panel.add (IbM enu );
panel.add (IbHar ga);
panel.add (txtKode );
panel.add (txtM enu );
panel.add (txtHar ga);
g etCont entPane().add ( panel);
setVi sibl e(t rue ); }
void kode _k ey P ressed (K ey Event k e ){
int tombol = k e.g etK eyCode();if (tombol ==10){ S t r ing sql = " Sel ect * f r om bar ang2 where
Kode _bar ang='"+ txtKode.g etT e xt()+"'";
S t r ing nmenu = "null";
S t r ing hmenu = "null";
t ry{
Cla ss.for Name(" com.mysql.jd bc.Dr iver ");
8/6/2019 Laporan Proyek Akhir Java
http://slidepdf.com/reader/full/laporan-proyek-akhir-java 25/30
Connection kon =Dr iver Manag er .g etConnection( "jd bc:mysql://localho st/t est?user =r oot& pa ssword =");
S tat ement stat = kon.creat eS tat ement(); Result Set rse = stat.e xecut eQuery( sql);
if( rse.ne xt()){
nmenu = rse.g et S t r ing("nama_ menu");
hmenu = rse.g et S t r ing("har ga");txtM enu. setT e xt(nmenu );
txtHar ga. setT e xt(hmenu );
setVi sibl e(fal se );
} el se{
JO ptionPane. show M essag e Dialog(null,"Kode
Bar ang Tid ak ad a");
txtKode.requestFocus();
}
}cat ch (Exception e xc ) {e xc. pr int S tackT r ace ();} }
} public static void main ( S t r ing[] ar g s ){
Car iData f rm = new Car iData(); }
}
V. H
asilForm untuk Tampilan Awal
8/6/2019 Laporan Proyek Akhir Java
http://slidepdf.com/reader/full/laporan-proyek-akhir-java 26/30
Ketika mengklik Button ADMIN :
Ketika mengklik Button Non-ADMIN :
Form untuk Meminta Password User
8/6/2019 Laporan Proyek Akhir Java
http://slidepdf.com/reader/full/laporan-proyek-akhir-java 27/30
Form untuk Tampilan Home
Form Input Data
Form Edit Data
8/6/2019 Laporan Proyek Akhir Java
http://slidepdf.com/reader/full/laporan-proyek-akhir-java 28/30
Form Delete Data
Form Search Data
8/6/2019 Laporan Proyek Akhir Java
http://slidepdf.com/reader/full/laporan-proyek-akhir-java 29/30
VI. Analisa
Dalam proyek ini, kita hanya dapat menampilkan GUI tapi tidak dapat
mengakses beberapa program yang berkoneksi dengan MySQL, seperti program
untuk megupdate,delete dan search data. Itu mungkin dikarenakan kurang paham
nya kami mengenai program-program yang bersangkutan.
VII. K esimpulan
I.