30
LAPORAN PROYEKAKHIR JAVA Oleh : Desna Roswat y Hoti mah (091331040) Devi Rosauli (091331042) Freddy Roy Ebsan (091331037) PROGRAM STUDI TEKNIK TELEKOMUNIKASI JURUSAN TEKNIK ELEKTRO POLITEKNIK NEGERI BANDUNG 2011

Laporan Proyek Akhir Java

Embed Size (px)

Citation preview

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 6/30

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. 

8/6/2019 Laporan Proyek Akhir Java

http://slidepdf.com/reader/full/laporan-proyek-akhir-java 30/30