Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
MODUL 3 Servlet dan JavaBean TUJUAN PRAKTIKUM : 1. Praktikum mampu membuat konfigurasi Servlet. 2. Praktikum mampu memahami dan membuat halaman JSP. 3. Praktikan mampu memahami dan membuat kelas Javabean dan penggunaannya di halaman JSP. 4. Praktikan mampu memahami manfaat dan membuat MVC. 5. Praktikan mampu mengerti mendeskripsikan cara penggunaan bahasa ekspresi di halaman JSP. PERLENGKAPAN PRAKTIKUM 1. Modul Praktikum 2. Eclipse Indigo atau Helios 3. Apache Tomcat Server 7.0 4. Browser (Chrome atau Mozilla Firefox) LANDASAN TEORI 1. Model View Controller (MVC) MVC merupakan sebuah arsitektur model yang membantu aplikasi untuk berkonsentrasi pada tugas dan fungsi masing-masing. Tugas dan fungsi trsebut dibagi menjadi : a. Model : mempresentasikan data dan logika bisnis, biasanya berhubungan dengan basis data. b. View : menampilkan data atau mengatur tampilan ke pengguna c. Controller : menghubungkan antara view dengan model Modul Praktikum Web Based Programming Page 1 Berikut ini adalah gambaran mengenai MVC Arsitektur MVC secara sederhana dirancang dan diadaptasi dalam penggunaan pada web application. Arsitektur yang dihasilkan kemudian disebut Model 2 Architecture. Aplikasi Model 2 umumnya memiliki : Servlet Controller yang menyediakan akses tunggal terhadap keseluruhan aplikasi. Controller ini bertanggung jawab menyediakan manajemen terpusat terhadap alur aplikasi dan juga service lain seperti penanganan security dan user management. Controller servlet umumnya menggunakan konfigurasi XML untuk mwnwntukan alur aplikasi dan pemrosesan perintah. Hal itu juga membuat helper components terasosiasikan dengan user action dan dibuat/dipanggil untuk menangani actions yang terjadi, memanggil komponen Model sebagaimana diperlukan. Hal ini berfungsi untuk memisahkan antara controller servlet dari model. Untuk mengimplementasikan langkahlangkahnya : MVC dengan RequestDispatcher, berikut 1. Tentukan bean untuk penyimpanan. Bean merupakan objek pada java 2. Gunakan servlet untu mengenali request 3. Tempatkan hasil pemanggilan servlet pada bean 4. Simpan bean dalam request, session, atau konteks servlet 5. Teruskan request ke halaman JSP 6. Ekstrak data yang disimpan dalam bean sebelumnya Modul Praktikum Web Based Programming Page 2 ini Contoh aplikasi MVC : Aplikasi ini akan menampilkan saldo rekening bank. Servlet controller akan membaca ID Customer dan meneruskannya pada kode data akses yang mengembalikannya ke bean Bankcustomer. Kemudian, bean tersebut disimpan ke dalam objek HTTPServletRequest yang dapat diakses halaman JSP tujuan. Jika saldo rekening negative, maka servlet meneruskannya ke halaman yang menampilkan pesan saldo negative. Jika saldo normal, akan diteruskan ke tampilan untuk saldo normal, dan untuk saldo tinggi, akan ditampilkan halaman ke halaman khusus dengan saldo tinggi. Ketika ID tidak diketahui, maka halaman errorakan muncul. Berikut ini adalah susunan struktur web : Modul Praktikum Web Based Programming Page 3 a. Servlet Showbalance b. Class BankCustomer Modul Praktikum Web Based Programming Page 4 c. Java Server Page (JSP) untuk menampilkan hasil HighBalance.jsp Modul Praktikum Web Based Programming Page 5 NormalBalance.jsp Modul Praktikum Web Based Programming Page 6 NegativeBalance.jsp UnknowCustomer.jsp d. Index web e. Hasil - HighBalance Modul Praktikum Web Based Programming Page 7 - NormalBalance - NegativeBalance - UnknownCustomer 2. Servlet Servlet adalah program Java yang berjalan di web atau aplikasi server. Servlet berfungsi sebagai middle layer (penghubung) antar web browser atau client HTTP dengan database atau aplikasi pada server HTTP. Modul Praktikum Web Based Programming Page 8 Fungsi – fungsi servlet adalah sebagai berikut : 1.Membaca data yang dikirim oleh client. Data yang diterima biasanya berasal dari form HTML, Applet, dan HTML client ; 2.Membaca request yang dikirim oleh browser 3.Menghasilkan output yang akan ditampilkan ke pengguna 4.Mengirim dokumen kepada client Dalam membangun servlet, perlu diperhatikan empat point sebagai berikut : 1. Kode program adalah kode Javabiasa. Ada API baru, tapi tidak ada sintaks yang baru; 2. Memiliki pernyataan import yang tidak familiar 3. Turunan kelas dari kelas HTTPServlet. Servlet menyediakan berbagai macam fitur untuk menangani HTTP 4. Override mothod doGet. Servlet memiliki menanganiberbagai jenis perintah HTTP Modul Praktikum Web Based Programming Page 9 method yang berbeda untuk Contoh Output 3. JavaBean JavaBean adalah kelas Java yang ditulis dalam format standar. Kelas bean harus diletakkan di dalam direktori yang sama dengan kelas servlet, bukan dalam direktori yang berisi file JSP. Lokasi yang tepat untuk kelas bean adalah : WEB-INF/classes/subdirectoryPackageName Modul Praktikum Web Based Programming Page 10 Ada tiga hal yang perlu diketahui tentang JavaBean, yaitu : 1. Kelas Java Bean seharunya memiliki konstruktor tanpa argument (default constructor) 2. Kelas Java Bean seharunya memiliki atribut yang didefinisikan sebagai private 3. Nilai variable di objek bean harus diakses melalui method getXxx dan SetXxx A. Keuntungan Java Bean Berikut ini merupakan keuntungan dari Java Bean : 1. Dengan menggunakan bean, halaman JSP dapat memanipulasi objek hanya dengan menggunakan sintaks XML 2. Pada konstruksi JSP dan Java Bean, berbagi (sharing) obyek di antara berbagai halaman atau request akan lebih mudah daripada menggunakan kode Java Eksplisit 3. Konstruksi JSP dan Java Bean menyederhanakan proses request pada saat membaca parameter, mengubah parameter dari string, dan menempatkan hasil perubahan tersebut di dalam objek. B. Menggunakan Bean Untuk membangun dan memanipulasi komponen Java Bean dalam halaman JSP, gunakan tiga tag berikut ini : 1. jsp:useBean Tag ini membangun Bean baru. Format tag selengkapnya adalah sebagai berikut : <jsp:useBean id =”beanName” class=”package.Class”/> 2. jsp:getProperty Tag ini membaca nilai property bean. Membaca property pada prinsipnya memanggil method bernama getXxx. Format tag selengkapnya adalah sebagai berikut : <jsp:getProperty name=”beanName” property=”propertyName”/> 3. jsp:setProperty Modul Praktikum Web Based Programming Page 11 Tag ini memodifikasi sebuah property bean (misalnya pemanggilan method bernama setXxx). Format tag selengkapnya adalah sebagai berikut : <jsp:setProperty name = ‘’beanName” property = “propertyName” value =”propertyValue”/> 4. JSP JSP (Java Server Page) adalah suatu teknologi web berbasis bahsa pemrograman java dan berjalan di Platform Java, serta merupakan bagian teknologi J2EE (Java 2 Enterprise edition). JSP memiliki sifat-sifat sebagai berikut : 1.Portable karena dibuat dengan teknologi java 2.Manajemen memory 3.Memiliki akses ke API Java yang lengkap seperti JDBC dan Java Mail 4.Dapat menggunakan komponen yang portable dan reusable (JavaBean) 5.Memiliki kinerja tinggi terhadap banyak request atau proses sekaligus dalam waktu yang sama 6.Mudah dalam deployment dan maintenance Selain itu, JSP memiliki kelebihan yang membuatnya patut dipertimbangkan sebagai bahasa pemrograman web untuk pembuatan aplikasi web yang tangguh. Kelebihan tersebut adalah : 1.Memisahkan presentasi static dan isi yang dinamik 2.Menekankan komponen reusable 3.Memudahkan pembuatan aplikasi dengan tag 4.Berbasis pemrograman bahasa java 5.Bagian dari platform Java 6.Terintegrasi dalam J2EE Lokasi default pemasangan halaman JSP di Tomcat dengan menggunakan http://host/SomeFile.jsp Modul Praktikum Web Based Programming Page 12 Contoh : Output 5. Expression Language Expression language merupakan bahasa expresi untuk mengakses bean tanpa menggunakan ekspresi skripting JSP secara eksplisit. Seperti ini <%=…%> Selain itu, expression language bertujuan : a. Akses singkat ke objek yang disimpan, hanya perlu menggunakan $ b. Notasi singkat untuk property bean c. Akases singkat ke parameter request, cookie, dan data reques lain d. Output bersyarat b e. Konversi otomatis f. Nilai kosong sebagai ganti error message Modul Praktikum Web Based Programming Page 13 Implementasi expression language : Akan dibuat sebuah aplikasi yang akan menampilkan property dari bean yang telah dibuat, antara lain bean pegawai, perusahaan. beanProperties.java Modul Praktikum Web Based Programming Page 14 - companyBean.java Modul Praktikum Web Based Programming Page 15 - employeeBean.java nameBean.java Modul Praktikum Web Based Programming Page 16 - - Servlet ScopeVars.java Bean-properties.jsp - Hasil Modul Praktikum Web Based Programming Page 17 - Modul Praktikum Web Based Programming Page 18 - Modul Praktikum Web Based Programming Page 19 PRAKTIKUM Pada praktikum modul ini, kita akan mencoba membuat form input buku baru menggunakan pattern MVC (model, view, controller) dengan method post(form)-> doPost (servlet) dan method get(form)-> doget(servlet). Berikut ini langkah-langkahnya : 1. Buka eclipse pada computer dan masuk ke workspace praktikan 2. Buat project baru, dengan nama modul3, seperti pada gambar berikut, dan jangan lupa untuk memilih target runtime Apache Tomcat v.7.0 3. Lalu coppykan file img dan style ke dalam folder Web Content. 4. Buat halaman css (css file) dengan nama style.css 5. Pada folder WebContent klik kanan -> new jsp -> tuliskan index.jsp -> klik finish Modul Praktikum Web Based Programming Page 20 6. Tuliskan script berikut ini pada file index.jsp Modul Praktikum Web Based Programming Page 21 7. Kemudian buat halaman untuk search, dengan nama searchAvailable.jsp. Tuliskan kode berikut ini Modul Praktikum Web Based Programming Page 22 Modul Praktikum Web Based Programming Page 23 8. Pada folder Java Resource : src -> new package -> tuliskan model -> klik finish, lalu pada package model klik kanan -> new class -> tuliskan customer.java (bean) -> klik finish. Ketikkan kode sebagai berikut pada halaman customer.java Kemudian buat kelas baru lagi untuk halaman jsp search, dengan nama search.java Modul Praktikum Web Based Programming Page 24 Modul Praktikum Web Based Programming Page 25 Maka akan tampil halaman sebagai berikut: Jika tidak terdapat kota yang dituju : Jika tidak ada inputan : Modul Praktikum Web Based Programming Page 26 Jika terdapat kota yang dituju : Modul Praktikum Web Based Programming Page 27