Aplikasi Sederhana CRUD Java Netbeans Dan Database Mysql
description
Transcript of Aplikasi Sederhana CRUD Java Netbeans Dan Database Mysql
-
29/12/2014 AplikasiSederhanaCRUDJavaNetbeansdanDatabaseMysql|ReyditzTya
http://reyditztya.blogspot.com/2013/06/aplikasisederhanacrudjavanetbeans.html 1/9
REYDITZ TYASebuah Catatan Di Masa Lalu, Sebuah Cerita Di Masa Depan
JavaPemogramanAplikasiSederhanaCRUDJavaNetbeansdanDatabaseMysql
APLIKASI SEDERHANA CRUD JAVA NETBEANS DAN DATABASE MYSQLJikakamumengambilkuliahjurusanITatauTeknikInformatikayangsedangbelajarpemogramanjavadanmendapatkantugasuntukmembuatProgramAplikasisederhanadengankoneksiDatabasemenggunakanMysqlberartikamumasukkeBlogyangtepat.KaliinisayaakanmembahasmengenaicaramembuataplikasisederhanayangdapatmenjalankanmenuCreate,Read,UpdatedanDelete(CRUD)
BagikamuyangbelummengetahuiapaituBahasaPemogramanJavadapatdibacadisini
PertamabuatlahsebuahdatabasebernamaDataBaseatauterserahanda,,kemudianbuatlahsebuahtabelatauentitasbernamaMahasiswa(ingattabelharusmempunyaisebuahprimarykey)yangmemilikiatribut:Nama,NRP,TanggalLahir,danAlamat.
MembuatProject
KemudiankitamulaimembuatprojectJavaAplicationdiNetbeans,caranya:File>NewProject,lalupadabagianCategoriespilihJavadanbagianProjectpilihJavaApplication.BerinamaprojectiniAplikasi.
Tahapselanjutnyakitaakanmembuatentityclassdimanaclassinibertujuanuntukmempresentasikanentityatautabeldalamsuatudatabase..Classinidibuatlewatfile>newfile,padacategoriespilihPersistenceselanjutnyapilihentityclassesfromdatabase
Jendelaberikutnyapadadatabaseconnectionpilihnewdatabaseconnectionkemudiannext.Kemudianisisesuaigambardibawahini
BerlanggananArtikel,InputkanEmailKamudiSini:
Subscribe
POPULAR POSTS ARCHIVE LABELS
SEARCH
PASANG IKLAN CUMA @5RB/30HARI
OFFICIAL PAGES
AboutRey Archive RealMadrid UltrasLife Pemograman
Search
Gara Gara Payudara Besar
Makalah Searching Linier Sequential(Pencarian Berurutan)
Mengenal Materi Kuliah PBO(Pemograman Berorientasi Objek)
Ayu Oktasari Take Me Out Bugil
Metode Bagi Dua Pada SistemPersamaan Nirlanjar (Non Linier)
Sheyla Hershey, Payudara Terbesar 38KKK
Contoh Program Bubble Sort PASCAL
Heboh!! Miss Columbia Ga Pake CD(Celana Dalam)
Penyerderhanaan Fungsi Logika denganK-Map (UNINDRA)
Nguyen Ha Dong, Si Flappy Bird
-
29/12/2014 AplikasiSederhanaCRUDJavaNetbeansdanDatabaseMysql|ReyditzTya
http://reyditztya.blogspot.com/2013/06/aplikasisederhanacrudjavanetbeans.html 2/9
Klikok,akanmunculjendelaberikutnyadanklikbuttonAddAllkemudiannext.Akanmunculjendelaberikutnyadanklikbuttoncreatpersistenceunit,ok,kemudiannext.Padacollectionpilihjava.util.Listdanklikbuttonfinish.
BerikutnyakitaakanmembuatclasspersistenceUtilitysebagaiutilitiesyangmembuatkoneksiJPAatauEntityManagerFactory:packageaplikasi;importjavax.persistence.EntityManagerFactory;importjavax.persistence.Persistence;publicclasspersistenceUtility{publicfinalstaticEntityManagerFactoryentityManagerFactory;static{//parameterharussamadengannamaPersistenceUnit//yangadapadafilepersistence.xmlentityManagerFactory=Persistence.createEntityManagerFactory("AplikasiPU");}publicstaticEntityManagerFactorygetEntityManagerFactory(){returnentityManagerFactory;}}
Selanjutnyakitaakanmembuattampilandariaplikasidatabaseini,,
Padacomboboxcariberdasarkan,,ubahlahmodelpadapropertycomboboxyangsebelumnya
TemukankamidiFacebook
ReyditzTya
20orangmenyukaiReyditzTya.
PluginsosialFacebook
Suka
SPONSOR
-
29/12/2014 AplikasiSederhanaCRUDJavaNetbeansdanDatabaseMysql|ReyditzTya
http://reyditztya.blogspot.com/2013/06/aplikasisederhanacrudjavanetbeans.html 3/9
dengannamadannrp,dengancaraklikkananpadacombobox,kemudianpadamodelyangsebelumnyaberisikanitem1,item2,item3,item4ubahmenjadinama,nrp.
Andthenubahlahnama2komponenatauvariabelsepertidibawahini:
karnakitamemakaiTabelsebagaiantarmukanya,,makakitaharusmembuatsebuahTableModeluntukmempermudahdalammenambahdatadangmengambildatadaritabel.BuatlahclassbarubernamaTableModel:packageaplikasi;importjava.util.ArrayList;importjava.util.Collection;importjava.util.List;importjavax.swing.table.AbstractTableModel;publicclassTableModelextendsAbstractTableModel{privatestaticfinallongserialVersionUID=1L;privateListlist=newArrayList();publicvoidupdateAll(Collectionmhs){list.clear();list.addAll(mhs);fireTableDataChanged();}publicMahasiswaget(intindex){returnlist.get(index);}publicvoidsetData(Listlist){this.list=list;//memberiperingatanketabelbahwadataberubahfireTableDataChanged();}publicvoidinsert(Mahasiswamhs){list.add(mhs);fireTableRowsInserted(getRowCount()1,getRowCount()1);}publicvoiddelete(intindex){list.remove(index);fireTableRowsDeleted(index,index);}publicvoidupdate(intindex,Mahasiswamhs){list.set(index,mhs);fireTableRowsUpdated(index,index);}publicMahasiswaselect(intindex){returnlist.get(index);}publicintgetRowCount(){returnlist.size();}publicintgetColumnCount(){return4;}
-
29/12/2014 AplikasiSederhanaCRUDJavaNetbeansdanDatabaseMysql|ReyditzTya
http://reyditztya.blogspot.com/2013/06/aplikasisederhanacrudjavanetbeans.html 4/9
publicObjectgetValueAt(introwIndex,intcolumnIndex){switch(columnIndex){case0:returnlist.get(rowIndex).getNama();case1:returnlist.get(rowIndex).getNrp();case2:returnlist.get(rowIndex).getTanggalLahir();case3:returnlist.get(rowIndex).getAlamat();default:returnnull;}@OverridepublicStringgetColumnName(intcolumn){switch(column){case0:return"Nama";case1:return"NRP";case2:return"Tanggallahir";case3:return"Alamat";default:returnnull;}}}
SelanjutankitatambahkanTableModelketampilanantarmuka,carannyamasukkebagiansourcekemudianubahkonstruktoryangsebelunnya:publicView(){initComponents();}
Menjadi:publicView(){initComponents();tableModel=newTableModel();Tabel.setModel(tableModel);}
Berikutnyatambahangetteruntuksemuakomponenpadasourceantarmuka,inibergunauntukcontroleryangakanbuatselanjutnya.publicView(){initComponents();tableModel=newTableModel();Tabel.setModel(tableModel);}publicJButtongetButtonDelete(){returnHapus;}publicJButtongetButtonInsert(){returnTambah;}publicJButtongetButtonUpdate(){returnEdit;}publicTableModelgetTableModel(){returntableModel;}publicJTablegetTable(){returnTabel;}publicJTextFieldgetTextNama(){returntxtNama;}publicJTextFieldgetTextNrp(){returntxtNrp;}publicJSpinnergetTanggal(){returnTanggal;}publicJTextAreagetAlmt(){returnAlamat;}
-
29/12/2014 AplikasiSederhanaCRUDJavaNetbeansdanDatabaseMysql|ReyditzTya
http://reyditztya.blogspot.com/2013/06/aplikasisederhanacrudjavanetbeans.html 5/9
SelanjutnyakitaakanmembuatclassControler.Classinibertugasuntukmelakukansemuaprosesmanipulasidatabase.BiasanyaControllermenyesuaikandenganView,misaldisiniViewmemilikitombolINSERT,UPDATEdanDELETE,artinyaControllerharusdapatmenanganimasalahINSERT,UPDATEdanDELETEtersebut.BiasanyaControllermenyesuaikandenganView,misaldisiniViewmemilikitombolINSERT,UPDATEdanDELETE,artinyaControllerharusdapatmenanganimasalahINSERT,UPDATEdanDELETEtersebut.Apahanyaitu?TIDAK!TerdapatsebuahtabelpadaVIewyangsebelumnyakitabuat,danyangjadipertanyaanbagaimanadatayangadadalamdatabasebisaterlihatditable?ArtinyakitaharusmembuatsiControllerdapatmenanganiprosesSELECT.packageaplikasi;importjava.util.Date;importjava.util.List;importjavax.persistence.EntityManager;importjavax.swing.JOptionPane;
publicclassControler{privateViewview;
publicControler(Viewview){this.view=view;}publicvoidinsert(){EntityManagermanager=PersistenceUtility.getEntityManagerFactory().createEntityManager();manager.getTransaction().begin();try{//buatmahasiswaMahasiswamhs=newMahasiswa();//ubahdatamahasiswamhs.setNama(view.getTextNama().getText());mhs.setNrp(view.getTextNrp().getText());mhs.setTanggalLahir((Date)view.getTanggal().getValue());mhs.setAlamat((view.getAlmt().getText()));//simpankedatabasemanager.persist(mhs);//simpahketablemodelview.getTableModel().insert(mhs);manager.getTransaction().commit();}catch(Throwablet){t.printStackTrace();manager.getTransaction().rollback();}finally{manager.close();}}publicvoidupdate(){//dapatkanbarisyangterseleksiintindex=view.getTable().getSelectedRow();//jikatidakadaif(index==1){//makaprosesdibatalkanJOptionPane.showMessageDialog(null,"Pilihbarisyangakandiupdate!");return;}EntityManagermanager=PersistenceUtility.getEntityManagerFactory().createEntityManager();manager.getTransaction().begin();try{//mendapatkanmahasiswadaritablemodelMahasiswamhs=view.getTableModel().select(index);//ubahdatamahasiswamhs.setNama(view.getTextNama().getText());mhs.setNrp(view.getTextNrp().getText());mhs.setTanggalLahir((Date)view.getTanggal().getValue());mhs.setAlamat((view.getAlmt().getText()));//updatemahasiswakedatabasemanager.merge(mhs);//updatemahasiswaketablemodelview.getTableModel().update(index,mhs);manager.getTransaction().commit();}catch(Throwablet){t.printStackTrace();manager.getTransaction().rollback();}finally{manager.close();}}publicvoiddelete(){
-
29/12/2014 AplikasiSederhanaCRUDJavaNetbeansdanDatabaseMysql|ReyditzTya
http://reyditztya.blogspot.com/2013/06/aplikasisederhanacrudjavanetbeans.html 6/9
//dapatkanbarisyangterseleksiintindex=view.getTable().getSelectedRow();//jikatidakadaif(index==1){JOptionPane.showMessageDialog(null,"Pilihbarisyangakandidelete!");return;//makaprosesdibatalkan}EntityManagermanager=PersistenceUtility.getEntityManagerFactory().createEntityManager();manager.getTransaction().begin();try{//mendapatkanmahasiswadaritablemodelMahasiswamhs=view.getTableModel().select(index);//menghapusmahasiswadaridatabasemanager.remove(manager.merge(mhs));//menghapusmahasiswadaritablemodelview.getTableModel().delete(index);manager.getTransaction().commit();}catch(Throwablet){t.printStackTrace();manager.getTransaction().rollback();}finally{manager.close();}}publicvoidselect(){EntityManagermanager=PersistenceUtility.getEntityManagerFactory().createEntityManager();try{@SuppressWarnings("unchecked")Listlist=manager.createQuery("selectafromMahasiswaaorderbya.nrp").getResultList();view.getTableModel().updateAll(list);}finally{manager.close();}}}
UntuktahapberikutnyakitaakanmenambahkanaksitombolTambah,Hapus,Edit,danRefresh.Dengancaradoublekliktomboltersebutkemudianisikankodeberiut:
Tambah:
privatevoidTambahActionPerformed(java.awt.event.ActionEventevt){if(txtNama.getText().equals("")||txtNrp.getText().equals("")||Alamat.getText().equals("")){JOptionPane.showMessageDialog(null,"Dataharusdiisidenganlengkap!");return;}controler.insert();txtNama.setText("");txtNrp.setText("");Alamat.setText("");}
Hapus:privatevoidHapusActionPerformed(java.awt.event.ActionEventevt){if(JOptionPane.showConfirmDialog(this,"AndaYakinAkanMenghapusDataMahasiswa?","HapusMahasiwa",JOptionPane.OK_CANCEL_OPTION)==JOptionPane.CANCEL_OPTION){//batalkanaksihapusreturn;}controler.delete();txtNama.setText("");txtNrp.setText("");Alamat.setText("");}
Edit:
privatevoidEditActionPerformed(java.awt.event.ActionEventevt){if(txtNama.getText().equals("")||txtNrp.getText().equals("")||Alamat.getText().equals("")){JOptionPane.showMessageDialog(null,"Dataharusdiisidenganlengkap!"
-
29/12/2014 AplikasiSederhanaCRUDJavaNetbeansdanDatabaseMysql|ReyditzTya
http://reyditztya.blogspot.com/2013/06/aplikasisederhanacrudjavanetbeans.html 7/9
);return;}controler.update();txtNama.setText("");txtNrp.setText("");Alamat.setText("");}
Refresh:
privatevoidrefreshActionPerformed(java.awt.event.ActionEventevt){controler.select();}
DanterakhirtambahkanaksitombolCari,,dengancarayangsamadanisikankodeberikut:
privatevoidjButton1ActionPerformed(java.awt.event.ActionEventevt){EntityManagermanager=PersistenceUtility.getEntityManagerFactory().createEntityManager();try{Listlist=manager.createQuery("selectbfromMahasiswabwhere"+"b."+(String)cmbCari.getSelectedItem()+"like'%"+txtCari.getText()+"%'").getResultList();//tampilkanhasilpencarianketabletableModel.setData((List)list);}catch(Throwablet){//perlihatkanerrort.printStackTrace();}finally{//tutupentitymanagermanager.close();}}
Sampaidisinisebenarnyaprogramkitasudahjadi,,tapiuntukmembuattabelpadaprogramkitalebihinteraktifmakatambahkankodeberikutpadakonstruktorviewatautampilanantarmuaprogramsehinggakontraktornyamenjadi:publicView(){initComponents();tableModel=newTableModel();Tabel.setModel(tableModel);controler=newControler(this);//menampilkandatamahasiswaketikaprogrampertamakalidijalankanrefreshActionPerformed(null);Tabel.getSelectionModel().addListSelectionListener(newListSelectionListener(){publicvoidvalueChanged(ListSelectionEvente){//dapatkanbarisyangterseleksiintbaris=Tabel.getSelectedRow();//cekapakahbaristerseleksiif(baris!=1){//jikaterseleksi,tampilkandatadiform//dapatkanmahasiswadaritabelMahasiswamhs=tableModel.get(baris);//tampilkandatadiformtxtNama.setText(mhs.getNama());txtNrp.setText(mhs.getNrp());Tanggal.setValue(mhs.getTanggalLahir());Alamat.setText(mhs.getAlamat());}}});}
Akhirnyaprogamdatabasesederhanatelahselesai,,,kitatinggalmenambahkandriverMySQLkedalamproject..CaranyaklikkananpadalibrariesprojectkitakemudianpilihAddLibrary,selanjutnyapilihMySQLJDBCDriver.DanprogramdatabasesederhanasiapdijalankanGampangkan!!Malahlebihgampangdaricarayangbiasa
Apabilaadakendalaataukesulitandalamprosespembuatannyasilakankomenya....Terimakaasih
DiposkanolehReyditzTya di00.57 2komentar
Label:Java,Pemograman
-
29/12/2014 AplikasiSederhanaCRUDJavaNetbeansdanDatabaseMysql|ReyditzTya
http://reyditztya.blogspot.com/2013/06/aplikasisederhanacrudjavanetbeans.html 8/9
Share this post
Related Posts
2Komentar:
SilahkantinggalkankomentarAndadibawahini,Adapunperaturanberkomentardiblogini:
1.Tidakmenempatkanlinkhidupsaatberkomentar.2.Tidakkomentarspam.3.Tidakkomentarpromosi.4.TidakkomentaryangmengandungunsurSARA.5.BerkomentardenganSopan.
Tidakmematuhiperaturan?Maaf,komentarandatidakakansayaterbitkan!
Clicktoseethecode!
Toinsertemoticonyoumustaddedatleastonespacebeforethecode.
MasukkankomentarAnda...
Berikomentarsebagai: GoogleAccount
Publikasikan
Pratinjau
RANDOM POST
Facebooksocialplugin
AlsopostonFacebook PostingasAgusCjdw(Change) Comment
Addacomment...
agungpw 9Juli201320.21
padapublicclasspersistanceUtilityadaerormin.
err:variableentityManagerFactorymightnothavebeeninitialized
soklusinyagimanaya??newbieni,barubelajar
Balas
ReyditzTya 9Juli201323.56
@agungpw:mohoncobadisamakanscriptclasspersistenceUtilitysebagaiutilitiesyangmembuatkoneksiJPAatauEntityManagerFactory
Balas
-
29/12/2014 AplikasiSederhanaCRUDJavaNetbeansdanDatabaseMysql|ReyditzTya
http://reyditztya.blogspot.com/2013/06/aplikasisederhanacrudjavanetbeans.html 9/9
2012ReyditzTya PostsRSSCommentsRSS
Copyright2008ReyditzTyaisproudlypoweredbyBlogger.com|TemplatebyFunday