MODUL PRAKTIKUM
JAVA ENTERPRISE
Oleh : Indra, S. Kom, M.T.I
FAKULTAS TEKNOLOGI INFORMASI UNIVERSITAS BUDI LUHUR JAKARTA 2015
KATA PENGANTAR
Dengan mengucapkan puji dan syukur kehadirat Alloh SWT yang Maha Pengasih dan Maha Penyayang yang telah memberikan rahmat serta karunia-Nya sehingga penulis dapat menyelesaikan modul praktikum java web programming ini dengan maksimal. Modul praktikum ini diharapkan dapat menjadi sarana dan media pembelajaran bagi mahasiswa pada umumnya dan khususnya mahasiswa dengan jurusan Teknik Informatika. Mahasiswa diharapkan dapat lebih mudah dalam memahami dan menerapkan konsep dan contoh program java web programming dalam kasus yang dihadapi dalam kehidupan sehari-hari. Modul secara ringkas berisi konsep dari beberapa bagian penting dalam pembelajaran java enterprise dan contoh program untuk lebih memahami penerapan konsep java enterprise tersebut. Tak ada gading yang tak retak, penulis menyadari modul ini masih memiliki banyak kekurangan. Kritik dan saran yang bersifat membangun bagi pengembangan penulis sangatlah kami harapkan. Semoga modul ini memberikan manfaat bagi perkembangan dunia teknologi dan informasi terutama dalam mensosialisasikan pemrograman java kepada insan pembelajar.
Jakarta, 12 Juni 2015
Indra,S.Kom, M.T.I
2
LEMBAR PENGESAHANMODUL PRAKTIKUM FAKULTAS TEKNOLOGI INFORMASI UNIVERSITAS BUDI LUHUR
Nama Mata Kuliah Nama Modul Penyusun Kerangka Modul
: Java Enterprise : Modul Praktikum Java Enterprise : Indra, S.Kom, M.T.I :
Pertemuan 1 : Review dan Penjelasan Materi Java Enterprise Secara Keseluruhan Pertemuan 2 : Arsitektur Model View dan Controller (MVC) Pertemaun 3 : Penerapan MVC dan konsep Framework Spring Pertemuan 4 : Penerapan MVC dan konsep Framework Spring Pertemuan 5 : Studi kasus Framework Spring Pertemuan 6 : Studi kasus Framework Spring Pertemuan 7 : Presentasi Studi kasus Framework Spring Pertemaun 8 : Ujian Tengah Semester Pertemuan 9 : Konsep Hibernate Pertemuan 10: Review Materi Hibernate Pertemuan 11: Implementasi Hibernate dengan Integrasi Web Spring MVC Pertemuan 12: Review & Penyelesain Pertemuan 11 Pertemuan 13: Studi kasus UAS Pertemuan 14: Presentasi UAS Pertemuan 15: Presentasi UAS Daftar Pustaka
Jakarta, 12 Juni 2015 Ketua Program Studi Teknik Informatika
(Muhammad Ainur Rony, S. Kom, M.T.I)
3
DAFTAR ISI
Halaman Kata Pengantar ----------------------------------------------------------------------
2
Lembar Pengesahan ----------------------------------------------------------------
3
Daftar Isi ----------------------------------------------------------------------------
4
Pertemuan1 --------------------------------------------------------------------------
5
Pertemuan2 --------------------------------------------------------------------------
8
Pertemuan3 -------------------------------------------------------------------------- 11 Pertemuan4 -------------------------------------------------------------------------- 11 Pertemuan5 -------------------------------------------------------------------------- 16 Pertemuan6 -------------------------------------------------------------------------- 24 Pertemuan 7 ------------------------------------------------------------------------- 25 Pertemuan8 -------------------------------------------------------------------------- 26 Pertemuan 9 ------------------------------------------------------------------------- 27 Pertemuan 10 ----------------------------------------------------------------------- 35 Pertemuan 11 ----------------------------------------------------------------------- 36 Pertemuan 12 ----------------------------------------------------------------------- 49 Pertemuan 13 ----------------------------------------------------------------------- 50 Pertemuan 14 ----------------------------------------------------------------------- 51 Pertemuan 15 ----------------------------------------------------------------------- 51
4
Pertemuan 1 Review dan Penjelasan Materi Java Enterprise Secara Keseluruhan
1.
Review Pemrograman Berorientasi Objek (PBO) dan PBOL Pada pertemuan perdana ini akan direview dari materi tentang
Pemrograman Berorientasi Objek (PBO) dan materi Pemrograman Berorientasi Objek Lanjutan (PBOL). Pada materi PBO akan direview tentang materi terkait variabel, konstanta,struktur kondisi, struktur perulangan serta konsep object oriented dalam java. Materi PBO yang direview ini akan dijadikan dasar dalam pembelajaran java enterprise di pertemuan
berikutnya,
karena
materi
java
enterprise
merupakan
menggunakan beberapa sintak dasar pada pembelajaran PBO. Pada
materi PBOL
akan
direview
pada
materi
bagaimana
mengkoneksikan antara java dengan database MySQL. Materi ini akan digunakan sebagai dasar dalam menerapkan konsep koneksi dari java framework (Spring) kedalam database MySQL. Materi koneksi ini akan lebih diimplementasikan dengan menggunakan konsep hibernate. 2.
Review Java Web Programming Pada materi ini akan direview pembelajaran java web programming
terutama dasar membangun web dengan jsp dan servlet. Materi JSP digunakan untuk membangun template dan form inputan pada suatu web site yang lebih dikenal dengan istilah VIEW. Materi Servlet digunakan untuk membangun controller yang digunakan untuk pengolahan, validasi dan koneksi dari form inputan kedatabase MySQL. Sekilas materi java web programming dapat dilihat pada pembahasan dibawah ini: Java Web adalah suatu device dari java yang digunakan untuk membuat aplikasi skala besar. Web Component adalah komponenkomponen java yang digunakan untuk membuat aplikasi web seperti Servlet dan JSP. Web Component dapat berkomunikasi dengan komponen java lain serta memanfaatkannya, seperti menggunakan komponen JDBC untuk mengakses database, komponen JMS & JavaMail untuk mengirim email.
5
Gambar 1. Arsitektur Java Web Container adalah web server berbasis java yang menampung web-component serta menyediakan layanan bagi web component seperti request dispatching, security, serta lifecycle management. Beberapa pembuat Web Container antara lain : �
Free software : Apache Tomcat, JResin, Jetty, Sun Glassfish.
�
Sun SJSAS, JBoss, IBM Websphere, Oracle Weblogic.
Salah satu free software ERP yang menggunakan web container Apache Tomcat adalah Compiere dan Adampiere.
Gambar 2. Struktur Web Application
6
Web Application adalah sebuah paket aplikasi yang siap di deploy (install) ke web container. Web application terdiri dari : �
Web component (Servlet, JSP, dsb).
�
File-file lain seperti; HTML, gambar.
�
Library : Driver database, JSTL, dsb.
�
Deployment descriptor (web.xml).
Paket aplikasi berbentuk 1 file berekstensi *.war (web archive), setelah dideploy akan terekstrak menjadi file-file dengan struktur khusus seperti gambar di atas.
7
Pertemuan 2 Arsitektur Model, View dan Controller (MVC)
Model, View dan Controller (MVC) adalah model terbaru dalam membangun web site dengan memisahkannya menjadi tiga komponen. Komponen pertama adalan view, pada komponen ini view digunakan untuk membangun template, form inputan dan form lain yang berhubungan dengan user. Dalam membangun komponen view ini konsep yang digunakan adalah HTML, CSS dan JSP. Komponen kedua adalah Controller. Pada komponen controller ini digunakan untuk pengolahan, validasi dan algoritma dari data yang masuk dari inputan.
Dalam
membangun komponen controller konsep XML (dispatcer-Servlet.xml) dan class NamaController.java sangat digunakan dan merupakan pondasi dasar controller. Sedangkan komponen model adalah class.java yang merepresentasikan tabel dari database di MySQL. Jika ada tabel mahasiswa yang memiliki field nim, nama dan alamat. Maka akan terbentuk class Mahasiswa.java yang memiliki variabel nim, nama dan alamat. Pada pertemuan 2 ini akan dibahas tentang arsitektur dari MVC dan beberapa framework yang termasuk dalam kategori MVC. 1.
Arsitektur MVC (Model-View-Controller) MVC adalah model pembuatan sistem/program yang memisahkannya
menjadi Model, View, dan Controller. Contoh MVC adalah struts, hibernate, spring, dll. Konsep MVC (model-view-controller) diciptakan agar tanggung jawab tiap individu di dalam tim pengembang software menjadi jelas. Konsep MVC membagi tugas sebagai berikut : �
Programmer berfokus pada Controller yang mengatur DFD (Data Flow Diagram) atau proses bisnis dari suatu aplikasi web.
�
DBA berfokus pada model yang menyusun ERD (Entity Relationship
Diagram)
dalam
bentuk
ORM
(Object
Relationship Mapping).
8
�
Designer berfokus pada View (estetika) dari tampilan web saja.
Gambar 3. Alur MVC pada aplikasi Java Web Alur MVC pada aplikasi Java Enterprise adalah : 1. Web browser mengirim request ke web container dan diterima oleh Servlet sebagai Controller. 2. Controller bertugas mengecek request lalu diproses. Output yang dihasilkan controller bisa berbentuk objek/java bean. Model bertugas merepresentasi data-data pada database dalam bentuk objek-objek yang saling berhubungan atau biasa disebut ORM (Object Relationship Mapping). 3. Controller kemudian menyerahkan tugas View (file JSP) untuk menampilkan objek. 4. View
mengambil
data
berbentuk
objek/java
bean
lalu
memprosesnya. 5. View mengirim response ke web browser untuk menampilkan data dengan syntax EL dan library JSTL.
2.
Framework MVC Framework adalah kerangka kerja. Framework juga dapat diartikan
sebagai kumpulan script (terutama class dan function) yang dapat membantu developer/programmer dalam menangani berbagai masalahmasalah dalam pemrograman seperti koneksi ke database, pemanggilan variabel, file, dll sehingga developer lebih fokus dan lebih cepat membangun aplikasi.
9
Bisa juga dikatakan framework sebagai modul-modul program yang dibuat untuk memudahkan pembuatan program J2EE. Framework ini berisi guideline bagaimana membuat program J2EE yang sudah tersusun dengan rapi dan didalamnya sudah berisi MVC. Secara sederhana bisa dijelaskan bahwa framework adalah kumpulan fungsi (libraries), maka seorang programmer tidak perlu lagi membuat fungsi-fungsi (biasanya disebut kumpulan library) dari awal, programmer tinggal memanggil kumpulan library atau fungsi yang sudah ada didalam framework, tentunya cara menggunakan fungsi-fungsi ini sudah ditentukan oleh framework. Beberapa contoh fungsi-fungsi standar yang telah tersedia dalam suatu framework adalah fungsi paging, enkripsi, email, SEO, session, security, kalender, bahasa, manipulasi gambar, grafik, tabel bergaya zebra, validasi, upload, captcha, proteksi terhadap XSS (XSS filtering), template, kompresi, XML, dan lain-lain.
10
Pertemuan 3 & 4 Penerapan MVC dan Konsep Framework Spring
Penerapan
model
pembuatan
web
dengan
MVC
dapat
diimplementasikan dengan menggunakan framework Spring. Spring adalah salah satu framework berbasis MVC yang didalamnya memiliki beberapa modul untuk pembuatan model, view dan controllernya. Pada pertemuan 3 dan 4 ini akan dijelaskan implementasi MVC dengan menggunakan framework Spring. 1.
Spring Spring atau lebih tepatnya SpringMVC adalah teknologi yang
memisahkan data, business logic, dan presentation layer. SpringMVC yang terdiri dari IOC(Injection Of Control) atau Dependency Injection telah membuat framework MVC dapat saling dipertukarkan. Teknologi lain yang berkembang sebelum SpringMVC adalah Struts, WebWork, Tapestry, JSF, dan Stripes. Spring
merupakan sebuah framework (kerangka kerja) yang
digunakan untuk membangun sebuah aplikasi Enterprise. Spring termasuk framework yang lightweight (ringan) untuk mendukung secara penuh dalam pengembangan aplikasi Enterprise siap pakai. Spring dapat digunakan untuk melakukan pengaturan deklarasi manajemen transaksi, remote access dengan menggunakan RMI atau layanan web lainnya, fasilitas mailing, dan beragam opsi untuk pengaturan data ke database. Spring juga memungkinkan kita menggunakan hanya modul-modul tertentu sehingga kita tidak usah menggunakan semua modul spring dalam aplikasi apabila tidak ditemukan. Fitur-fitur dari Spring Framework : � Transaction Management : Spring framework menyediakan sebuah layer abstrak yang generik untuk manajemen transaksi, sehingga memudahkan para developer dalam melakukan manajemen transaksi.
11
� JDBC Exception Handling : Layer abstrak JDBC menawarkan exception yang bersifat hierarki sehingga memudahkan penanganan error. � Integration with Hibernate, JDO, and iBatis : Spring menawarkan layanan integrasi terbaik dengan Hibernate, JDO, dan iBatas. � AOP Framework : Spring merupakan framework AOP terbaik yang pernah ada. � MVC Framework : Spring hadir dengan framework aplikasi web MVC, yang dibangun di atas inti Spring. Spring merupakan framework yang sangat fleksibel dalam pengaturan strategi interface, dan mengakomodasi beberapa teknologi view seperti JSP, Velocity, Tiles, iText, dan POI.
2.
Software Yang Dibutuhkan Untuk Pengembangan Aplikasi Spring Untuk melakukan pengembangan sebuah aplikasi berbasis java web
programming dibutuhkan beberapa software penunjang, antara lain : � JDK 1.6 � NetBeans 7.3 (include Apache Tomcat) � XAMPP � MySQL Front 3.
WAR Files Sebuah aplikasi web merupakan sekelompok halaman HTML,
halaman JSP, servlet, source file, yang dapat dikelola sebagai satu kesatuan unit. Web archive (WAR) file merupakan sebuah package dari web application. File WAR dapat digunakan untuk mengimpor aplikasi web ke web server. Selain project resources, WAR Files berisikian file descriptor dari deployment. Web deployment descriptor adalah sebuah file XML yang berisikan informasi deployment, tipe MIME, rincian konfigurasi session, dan pengaturan lainnya pada aplikasi web.Web deployment descriptor file
12
(web.xml) memberikan informasi mengenai WAR file yang telah dibagikan oleh para pengembang aplikasi, perakit, dan pengembang dalam lingkungan Java EE.
4.
Arsitektur Spring Gambaran arsitektur Spring dapat dilihat pada Gambar 1 dibawah ini:
Gambar 4. Arsitektur Spring Framework Spring memiliki 20 modul seperti terlihat pada Gambar 4. Framework memiliki tiga modul inti yaitu Core Container, Data Access/Integration dan Web (MVC/Remoting). 4.1
Core Container Core container adalah salah satu modul inti dari framework spring
yang memiliki empat komponen yaitu: Core, Beans, Context dan Expression Languange Model. 4.1.1 Modul Core Modul Core berisi beberapa komponen fundamental dalam framewoek Spring. Modul Core berisi IoC dan Dependency Injection Features.
13
4.1.2 Modul Bean Modul Bean berisi BeanFactory yang merupakan implementasi dari penggunaan class factory.Class factory adalah class yang digunakan untuk memanipulasi data yang ada didatabase. 4.1.3 Modul Context Modul Context berisi modul Core dan modul Beans. Modul Context juga berperan sebagai media untuk mengakses beberapa objek yang sudah dideklarasikan dan dikonfigurasikan. Implementasi Modul Context ini menggunakan file ApplicationContext.xml. 4.1.4 Modul SpEL Modul SpEL menyediakan ekspresi language untuk query dan manipulasi objek pada kurun waktu tertentu.
4.2
Data Acces/Integration Layer Data Access/Integration memiliki lima modul yaitu JDBC,
ORM, OXM, JMS dan Transaction Modul. 4.2.1 Modul JDBC Modul JDBC berisi beberapa komponen fundamental dalam koneksi kedatabase. Pada modul sintak query terkait koneksi dengan database dihilangkan dan diganti dengan memanggil function Save, Update and Delete untuk memanipulas data di database. 4.2.2 Modul ORM Modul ORM berfungsi untuk mengintegrasikan beberapa layer untuk Object Relational Mapping API seperti JPA, JDO, Hibernate dan iBatis. 4.2.3 Modul OXM Modul OXM menyediakan layer abstrak yang mensupport implementasi Object/XML Mapping untuk JAXB, Castor, XMLBeans, JiBX dan Xstream. 4.2.4 Modul JMS Modul Java Message Service (JMS) berisi
fitur
untuk
memproduksi dan mengolah messages.
14
4.2.5 Modul Transaction Modul Transaction mensupport algoritma dan deklarasi transaksi manajemen untuk beberapa class interface dan diimplementasikan dalam class POJOs. 4.3
Web Layer Web memiliki empat modul yaitu modul Web, Modul Web-
MVC, Modul Web-Socket, dan Modul Portlet. 4.3.1 Modul Web Modul Web berisi fitur untuk modul menyediakan fitur integrasi web berorientasi dasar seperti multi fungsi file upload dan inisialisasi wadah IOC menggunakan class servlet dan aplikasi contex web berorientasi function Save, Update and Delete untuk memanipulas data di database. 4.3.2 Modul Web MVC Modul Web MVC berisi implementasi model view dan controller untuk pembuatan aplikasi web. 4.3.3 Modul Web Socket Modul Web Socket menyediakan komunikasi dua arah antara client dan server dalam aplikasi web. 4.3.4 Modul Web Portlet Modul Web Portlet menyediakan implementasi MVC pada sintak di class Portlet dan memaksimalkan fungsionalitas dari web servlet module.
15
Pertemuan 5 Studi kasus Framework Spring
Pada pertemuan ke 5 ini akan dibahas penerapan dan studi kasus dari framework spring. Pada tahapan penerapan spring akan dilakukan dengan membuat aplikasi web sederhana dengan menggunakan tahapan Spring Web MVC. Setelah itu, mahasiswa diarahkan untuk mengembangkan dan menyelesaikan dari kasus yang diberikan untuk diselesaikan dengan menggunakan framework Spring 1.
Penerapan Framework Spring Pada tahap ini akan dijelaskan secara tahap demi tahap dalam
membangun suatu web denga framework Spring. Target dalam penerapan Framework ini dapat dilihat pada Gambar 5.
Gambar 5. Alur Web Sederhana dengan Penerapan Framework Spring Untuk membangun web seperti pada Gambar 5 dengan menggunakan framework Spring memiliki beberapa tahapan. 1.1 Membuat View (nameView.jsp dan HelloView.jsp) Sebelum membuat view maka dibuat project Spring di netbeans terlebih dahulu dengan ilustrasi sebagai berikut:
16
Gambar 6. Membuat project Spring di Netbeans
Pada tahap selanjutnya akan digunakan untuk membuat komponen view. Komponen view pada kasus seperti pada Gambar 6 adalah berupa form inputan yang dibuat pada file nameView.jsp. Sintak pada nameView.jsp dapat dilihat pada Gambar 7.
Gambar 7. Form inputan dengan nameView.jsp
17
Sedangkan untuk menampilkan informasi berdasarkan data yang diinput dari nameView.jsp menggunakan file helloView.jsp yang dapat dilihat pada Gambar 8.
Gambar 8. Output informasi dengan helloView.jsp
1.2 Membuat Komponen Service Pada tahap ini digunakan untuk membuat class Service yang berperan sebagai class perantara untuk menampilkan informasi pada komponen View. Class Service dalam package Service, pada tahapan ini dibuat dengan nama HelloService.java dengan ilustrasi pada Gambar 9.
Gambar 9. Sintak class HelloService.java
18
1.3 Membuat Model dan Controller Pada tahap ini dibuat komponen controller untuk validasi dan pengolahan data yang masuk dari komponen view. Class yang dibuat pada komponen controller ini dengan nama HelloController.java. Class HelloController.java merupakan class dari turunan Simple Form Controller yang dibuat dengan ilustrasi pada Gambar 10
Gambar 10. Cara membuat Controller di Spring Lalu buat class HelloController.java dengan ilustrasi sintak sebagai berikut:
19
A
B
Gambar 11. Source Code HelloController.java A. Penjelasan Empat Method di konstruktor HelloController.java Ada empat Method yang dipanggil pada konstruktor yang memiliki peranan
masing-masing.
Method
setCommandClass(Name.class)
digunakan untuk memanggil class model yaitu Name.java yang berisi method setter dan getter yang merepresentasikan suatu tabel di database.
Method
setCommandName(“name”)
menampung id dari namView.java
digunakan
untuk
suatu form inputan yang dibuat pada
seperti
pada
Gambar.....
Methode
setSuccesView(“helloView”) digunakan untuk mengolah output dari form inputan dikomponen view dengan nama helloView.jsp yang dibuat
dengan
ilustrasi
pada
Gambar
11
Method
20
setFormView(“nameView”) digunakan untuk mengolah Form inputan pada komponen view dengan nama nameView.jsp seperti diilustrasikan pada Gambar 11 B. Penjelasan Method onSubmit() Method onSubmit merupakan method bertipa ModelAndView. Method ini berperan untuk menjalankan class model yaitu Name.java dan
mengoutputkan
informasi
dari
form
inputan
kedalam
helloView.jsp. informasi yang dioutputkan menggunakan method getter pada class Name.java yaitu method getValue() dan via parameter
helloMessage.
Parameter
helloMessage
yang
akan
ditampilkan pada helloView.jsp dengan sintak { helloMessage }.
1.4 Membuat Modul Context Pada tahap ini adalah implementasi dari Modul Context yang diterapkan pada file applicationContext.xml. file applicationContext.xml digunakan untuk merepresentasikan class Service yaitu helloService.java yang akan dialiaskan dalam bentuk beans dengan nama helloService. Ilustrasi dari applicationContext.xml dapat dilihat pada Gambar 12 Tambahkan sintak yang dibingkai pada file applicationContext.xml.
Gambar 12. Detil sintak ApplicationContext.xml
21
1.5 Membuat Jembatan antara View dan Controller Pada
tahap
ini
adalah
tahapan
untuk
menjembatani
atau
menghubungkan antara komponen view dengan komponen controller. Penghubung antara view dan controller dibuat dan dikonfigurasikan pada file dispatcher-servlet.xml. Modifikasi dispatcher-servlet.xml dengan menambahkan sintak yang dibingkai seperti pada gambar 13.
Gambar 13. Detil Sintak Dispatcher-Servlet.xml Pada Gambar 13 bean dari class HelloService yang diberikan nama helloService akan dihubungkan dengan sebuah controller dengan nama HelloController.java dalam package controller.
1.6 Membuat Class Model Pada tahap ini digunakan untuk membuat class Model. Class Model adalah class yang berisi method setter dan getter untuk menampun dan menampilkan data menggunakan konsep Encapsulation.
Class Model
adalah class yang merepresentasikan atribut dari tabel di database. Jika ada tabel mahasiswa yang memiliki field nim,nama maka akan terbentuk class
22
Mahasiswa.java yang memiliki variabel String nim dan String nama. Class Model dapat dilihat pada Gambar 14.
Gambar 14. Detil Sintak Class Name.java
23
Pertemuan 6 Studi kasus web Spring
Pada pertemuan ini digunakan untuk mereview materi dari pertemuan ke 5. Banyak mahasiswa yang belum selesai dalam membangun web spring seperti pada pertemuan ke 5 sehingga pada pertemuan ini digunakan untuk menyelesaikan pengerjaan web Spring tahap demi tahap seperti pada pertemuan ke 5. Selain itu, juga digunakan untuk studi kasus web spring dengan mengembangkan konsep web spring dengan membuat program berbasis web spring dengan ilustrasi: Algoritma 1. Ilustrasi studi kasus web spring
Inputan : Nim: 0911500345 Nama: Indra Alamat: Jakarta Output: Nim: 0911500345 Nama: Indra Alamat: Jakarta Status: DO
Buat program dengan ilustrasi diatas dengan form inputan dan output ditambahkan status jika masa studi sampai dengan tahun terkini lebih dari lima tahun maka akan di DO.
24
Pertemuan 7 Presentasi Studi kasus web Spring
Pada pertemuan ini digunakan untuk mengembangkan dari pertemuan ke 6. Mahasiswa diharapkan dapat lebih mendalami alur dari pembuatan web dengan Framework Spring.
Mahasiswa dibagi dalam beberapa
kelompok. Setiap kelompok dibagi mendapatkan sebuah topik. Topik yang dibagikan misalnya adalah aplikasi parkir. Pada aplikasi parkir memiliki beberapa Form master. Form master tersebut adalah Master kendaraan motor, Master pegawai, Form Jadwal. Setiap form master tersebut dibuat dengan menggunakan konsep Web SpringMVC dengan algoritma sesuai kasus yang didapatkan. Proses algoritma setiap form master dipastikan harus berjalan. Setiap kelompok diharapkan mempresentasikan dari form master tersebut untuk penilaian tugas didepan kelas. Presentasi dari setiap kelompok akan mendapatkan masukan dari rekan mahasiswa atau kelompok lain dan masukkan digunakan untuk mengembangkan sampai ke tahap uas.
25
Pertemuan 8 UTS
Pada pertemuan ini mahasiswa mengerjakan soal UTS. Soal UTS bersifat project, jadi setiap mahasiswa mengerjakan UTS dengan membuat program sesuai soal yang diberikan dengan menggunakan web Spring
.
26
Pertemuan 9 Konsep Hibernate
Pada pertemuan ini akan dibahas tentang penggunaan framework Hibernate. Framework hibernate adalah modul program yang digunakan untuk menghubungkan dari framework Spring ke berbagai jenis database. Kelebihan dari framework hibernate ini adalah dapat secara cepat dan fleksibel ketika dimigrasikan kedalam jenis database yang berbeda. Pada pertemuan ini akan dijelaskan konsep dan penggunaan hibernate dengan menggunakan aplikasi desktop sebagai pembelajaran awal. Tahapan dari implementasi hibernate untuk koneksi form dekstop kedalam database MySQl sebagai berikut:
9.1.
Membuat database di MySQL Buatlah database dengan nama Sakila dan tabel “dvd”. Tabel dvd
memiliki empat field yaitu kd_dvd, nama_dvd, jenis_dvd, harga. Ilustrasi tabel dvd dapat dilihat pada Gambar 15.
Gambar 15. Tabel DVD
27
9.2.
Membuat Project DVDStoreAdmin Pada tahap ini mahasiswa diarahkan membuat project di netbeans dengan nama DVDStoreAdmin. Ilustrasi pembuatan project dapat dilihat pada Gambar 16.
Gambar 16. Membuat project hibernate di netbeans 9.3.
Membuat file konfigurasi Hibernate Pada tahap ini digunakan untuk membuat file konfigurasi hibernate
dengan hibernate.cfg.xml.
File hibernate.cfg.xml digunakan untuk
pengaturan user, password ke database MySQL serta pengaturan jenis database yang digunakan. Selain itu, juga pengaturan untuk jenis factory_class yang digunakan dalam pemanggilan query ke database. Ilustrasi pembuatan file dapat dilihat pada Gambar 17.
28
Gambar 17. Konfigurasi File Hibernate Hasil akhir file hibernate.cfg.xml dapat dilihat pada Gambar 18
Gambar 18. Detil sintak hibernate.cfg.xml 9.4.
Memanggil JDBC Pada tahap ini digunakan untuk mensetting libray JDBC sudah di
add. Librari JDBC digunakan untuk menghubungkan dari Java ke MySQL. JDBC yang sudah teradd akan terlihat dengan kalimat mysql-connectorjava-versi.jar. seperti terlihat pada Gambar 19.
29
Gambar 19. Konfigurasi mysql-connector 9.5.
Membuat class HibernateUtil Class HibernateUtil digunakan untuk menangani proses startup dan
dan mengakses Hibernate Session Factory untuk mendapatkan isi dari session. Session pada kasus disini adalah koneksi untuk terhubung dengan database MySQL. Session dengan sintak openSession() digunakan untuk membuka koneksi dari aplikasi java kedalam database MySQL. Detil pembuatan class HibernateUtil dapat dilihat pada Gambar 20.
Gambar 20. Detil Pembuatan class Util
30
Detil Sintak pada class HibernateUtil dapat dilihat pada Gambar 21
Gambar 21. Detil Sintak Class HibernateUtil.java 9.6.
Membuat file Mapping Hibernate dengan Java Class Pada tahap ini digunakan untuk membuat file reverse engineering
yang digunakan untuk memappingkan dari database MySQL dengan
31
sebuah file XML di dalam project. Tahapan ini akan dilihat pada Gambar dibawah ini.
9.7.
Membuat file POJOs (Plain Old Java Object) Pada tahap ini akan dilakukan pembuatan class POJO. Class POJO
adalah file .java yang merepresentasikan data dari tabel di database MySQL. Sebagai contoh tabel dvd memiliki field kd_dvd, nm_dvd maka akan terbentuk class DVD.java dengan variabel didalamnya adalah String kd_dvd, nm_dvd.
Sebelum membuat class POJO maka disarankan
membuat package “entity”. Ilustrasi pembuatan POJO dapat dilihat pada Gambar 22
Gambar 22. Membuat class POJO
32
Dan akan terbentuk file DVD.java dan file DVD.hbm.xml dengan ilustrasi sebagai berikut:
Gambar 23. Hasil akhir class POJO 9.8.
Membuat Form Inputan (View) Pada tahap ini digunakan untuk membuat form inputan dengan
nama
FrmMahasiswa.java
dalam
package
sakila.ui.
file
FrmMahasiswa.java merupakan class yang bertipe JFrame. Ilustrasi dari FrmMahasiswa dapat dilihat pada Gambar 24
Gambar 24. Form inputan hibernate
33
Ketika diklik tombol “Simpan” maka data akan masuk kedatabase MySQL dengan menggunakan framework Hibernate. Detil sintak “Simpan” sebagai berikut:
Gambar 25. Detil sintak simpan menggunakan hibernate
Sintak yang dibingkai elips merupakan sintak utama untuk menyimpan data kedatabase MySQL . sintak tersebut memanggil method save() yang merupakan bawaan dari framework hibernate.
34
Pertemuan 10 Review Materi Hibernate
Pada pertemuan ini akan dibahas tentang review dari pertemuan ke 9 dan menyelesaikan pembuatan program hibernate seperti pada pertemuan ke 9
35
Pertemuan 11 Implementasi Hibernate dengan Integrasi Web SpringMVC
Pada tahap ini akan dilakukan pembuatan web spring dengan koneksi ke database MySQL. Koneksi ke database MySQL dengan menggunakan framework hibernate. Detil tahapan akan dijelaskan sebagai berikut: 11.1. Output dari pertemuan ini Output dari pertemuan ini dapat dilihat pada Gambar 26.
Gambar 26. Tampilan Output dari web spring dan hibernate
11.2. Membuat project WebSpring dengan integrasi Hibernate Pada tahap ini akan dilakukan pembuatan web spring dengan integrasi dengan web hibernate seperti pada Gambar 27.
36
Gambar 27. Membuat Project Spring dengan Hibernate
Pada Gambar 27 dijelaskan dalam membuat project Spring dan hibernate dengan mengaktifkan framework Spring web MVC dan framework Hibernate versi secara bersamaan.
11.3. Membuat konfigurasi hibernate Pada tahap ini akan dilakukan konfigurasi dan pembuatan hibernate. Detil tahapan yang dilakukan adalah pembuatan database di MySQL sampai dengan pembuatan class POJO seperti dijelaskan pada sub bab 9.1 sampai dengan 9.7. Hasil akhir pada tahapan ini dapat dilihat pada Gambar 28
37
Gambar 28. Hasil Akhir web spring hibernate
11.4. Membuat Controller Pada tahap ini dilakukan untuk membuat controller. Controller akan digunakan untuk menghubungkan antara View (tampil.jsp) dan Controller (ViewController.java). Controller berpusat pada file dispatcherservlet.xml. detil sintak pada file dispatcher-servlet.xml adalah sebagai berikut:
Gambar 29. Detil sintak dispatcher-servlet.xml
38
Pada gambar .. tampilkey adalah id penghubung antara tampil.jsp (tampil.htm) dengan class Controller ViewController dalam package controller.
11.5. Membuat View Pada tahap ini digunakan untuk komponen view yaitu tampil.jsp dengan detil sintak sebagai berikut:
Gambar 30. Detil sintak tampil.jsp
39
11.6. Membuat file Controller Pada tahap ini akan digunakan untuk membuat file controller dengan nama ViewController.java dengan detil sintak sebagai berikut:
Gambar 31. Detil Sintak viewController.java Output sampai dengan tahapan ini dapat dilihat pada sub bab 11.1 untuk menampilkan data dari database.
11.7. Membuat Proses Simpan Untuk membuat proses Simpan dari form inputan (nameView.jsp) dengan koneksi ke hibernate dapat dilihat dengan membuat nameView.jsp terlebih dahulu seperti pada Gambar 32.
40
Gambar 32. Detil sintak form inputan nameView.jsp
41
11.8. Membuat Controller Simpan Pada tahap ini akan dilakukan untuk membuat controller simpan. Controller simpan digunakan untuk memasukkan data dari nameView.jsp kedalam hibernate. Dengan detil sintak sebagai berikut:
Gambar 33. Detil sintak HelloController.java 11.9. Menampilkan data yang mau di edit Buat Form Edit.jsp sebagai perantara dalam pengiriman data dvd
42
Gambar 34. Form perantara utk edit Buat EditController.java untuk menampilkan data ke dalam View
Gambar 35. Detil sintak EditController.java
43
Data yang mau diedit akan ditampilkan dalam Form edit_dvd.jsp. Berikut sintak edit_dvd.jsp
Gambar 36. Detil sintak edit_dvd.jsp
44
11.10. Membuat Controller untuk proses Edit tahap akhir Pada tahap ini akan dilakukan edit data ke database. Buatlah Edit_DVD.java bertipe SimpleFormController.
Berikut source untuk Edit_DVD.java
45
Gambar 38. Detil sintak utk edit di Edit_DVD.java
11.11. Membuat Hapus Pada tahap ini akan dilakukan untuk menghapus data di database dari web Spring: Setting dispatcher-servlet.xml
46
Gambar 39. Mapping view delete dan controller delete Buat delete.jsp dengan sintak sbb:
Buat deleteController.java untuk controller hapus
47
Gambar 40. Detil Sintak DeleteController.java 11.12. Selesai
48
Pertemuan 12 Review Pertemuan 11
Pada pertemuan ini akan dibahas ulang pertemuan 11 yaitu membuat web spring dengan integrasi database. Pada pertemuan 11 banyak mahasiswa yang belum menyelesaikan program web spring hibernate sehingga perlu diselesaikan secara tuntas dengan proses simpan, tampil, ubah dan hapus supaya berjalan.
49
Pertemuan 13 Studi kasus UAS
Pada pertemuan ini mahasiswa yang sudah dibagi dalam beberapa kelompok diharapkan untuk menentukan topik uas. Topik uas memiliki kriteria : a. Memiliki studi kasus/ lokasi riset yang ada dilapangan b. Memiliki alur proses bisnis c. Dapat diidentifikasi Form Master minimal 5 d. Dapat diidentifikasi Form transakasi Minimal 1 e. Program berjalan setiap Form diharapakan proses simpan, tampil, ubah dan hapus berjalan dengan proses web SpringMVC dan menggunakan hibernate.
50
Pertemuan 14 & 15 Presentasi UAS
Pada tahap ini akan dilakukan penilaian uas. Penilaian UAS dilakukan dengan melihat hasil pekerjaan setiap kelompok. Komponen yang dinilai adalah: a. Desain web b. Pemahaman Konsep Spring dan Hibernate yang digunakan c. Hasil Program (Scope dan banyaknya fitur) d. Troubleshooting program
51
DAFTAR PUSTAKA
Patzer, Andrew. 2002. JSP Examples and Best Practices. Apress: USA Bryan, et al. 2008. Head Firs Servlet and JSP Second Edition. O’Reilly Media: USA.
Deitel, Paul., Deitel, Harvey., 2010. Java How to Program 8 th Edition. Prentice Hall. Hall, Marty., Brown, Larry. ”Core Servlet and Java Server Pages 2 nd Edition”. Prentice Hall Hall, Marty. “More Servlets and Java Server Pages”,Prentice Hall Tutorial JSP. 2013. http://www.tutorialspoint.com/spring/. 3rd Apr 2013 Application Configuration. http://docs.jelastic.com/application-configuration. March 2012
2012. 2nd
Thomas Risberg, Rick Evans, Portia Tung. Developing a Spring Framework MVC application step by step using Netbeans and Glasfish . Cavaness,Chuck. 2000. Programming Jakarta Struts. O'Reilly & Associates, Inc. Hennebrüder, Sebastian. 2005. First steps using Struts and Hibernate.
52
��������������������������������������������������������������������������� ��������������������������������������������������������������������������������� �����������������������������������������������������