Jumat, 23 Desember 2011

Java Servlet

Java Servlet adalah komponen berbasis java yang digunakan untuk berkomunikasi dengan web server dengan model pemrograman request-response. Servlet merupakan komponen yang sangat fundamental dalam teknologi java enterprise. tujuan utama spesifikasi servlet adalah menyediakan menyediakan mekanismeyang andal untuk menangani request dan respons dalam aplikasi berbsis web.
servlet memiliki banyak keunggulan dibandingkan aplikasi Common Gateway Interface (CGI) yang bisa digunakan saat spesifikasi servlet diciptakan, antara lain efektivitas penggunaan memori, keamanan, dan kecepatan. Dalam desain pattern Model View Controller (MVC), servlet dapat digunakansebagai komponen view ataupun controller. akan tetapi, biasanya servlet lebih sering digunakan sebagai controller, sedangkan untuk view diserahkan kepada komponen lain seperti JSP ataupun JSF. untuk dapat menguji servlet, kita memerlukan servlet container, dan servlet container yang kita gunakan kali ini adalah apache tomcat 6.
Kita perlu terlebih dahulu mengetahui siklus hidup servlet dalam suatu servlet container untuk memahami apa yang terjadi ketika servlet bekerja. siklus hidup servlet dibagi menjadi tiga fase, yaitu initialization hanya bekerja sekali, sedangkan fase service dapat dijalankan beberapa kali. initialization merupakan fase pertama yag dipekerjakan dan yang merupakan proses pembuatan instance dan mengmbil semua sumber daya yang diperlukan oleh servlet tersebut. semua kelas servlet harus mengimplementasikan interface javac.servlet.servlet yang didalamnya terdapat method init() yang akan dipanggil oleh container pertama kali ketika servlet dipanggil.
Face service dalam siklus hidup sehat servlet mempresentasikan semua interaksi denga request sampai servlet tersebut dihapus pada fase destruction. seperti juga method init() yang terdapat dalam interface servlrt, method service() juga terdapat dalam interface servlet. method service() akan dipanggil tiap kali ada request dan bertanggung jawab memberikan response dari request tersebut. method service() bekerja dengan dua parameter, yaitu obyek javax.servlet.servletrequest dan javax.servlet.servletresponse.
Fase terakhir dalam hidup Java Servlet yaitu destruction. dalam fase ini, instance servlet akan dihapus dan sumber daya yang digunakan akan dibebaskan. method yang didefinisikan oleh interface servlet untuk menangani proses penghapusan ini adalah destroy().




CodeIgniter adalah framework PHP yang dibuat berdasarkan kaidah Model View Controller (MVC). dengan MVC,  maka memungkinkan pemisahan antara layer application-logic dan presentation. sehingga, dalam sebuah tim pengembangan web, seorang programmer bisa berkonsentrasi pada core-system, sedangkan web designer bisa berkonsentrasi pada tampilan web.
Menariknya, script PHP, query MySQL javascript, dan CSS bisa saling terpisah-pisah, tidak untuk mengeksekusinya. dengan demikian, aplikasi yang anda buat mudah untu di maintenance dan dikembankan lebih lanjut.
Adapun alur aplikasi Model View Controller dapa dilihat pada gambar di bawah:
Dari gambar diatas dapat diilustrasikan ketika datang sebuah user yang memakai sebuah browser, maka permintaan terseut akan ditangani oleh Controller, kemudian Controller akan memanggil model jika memang diperlukan operasi database. hasil dari query oleh model kemudian akan dikembalikan ke controller. selanjutnya Controller akan memanggil view yang tepat dan mengkombinasikannya dengan hasil query model. hasil akhir dari operasi ini akan ditampilkan ke browser yang selanjutnya bisa dilihat oleh user.
Dalam konteks CodeIgniter dan aplikasi berbasis web, maka penerapan konsep Model View Controller(MVC) mengakibatkan kode program dapat dibagi menjadi tiga kategori, yaitu:
  1. Model, adalah kode program (berupa OOP class) yang digunakan untuk memanipulasi database.
  2. View, berupa template html/xhtml atau php untuk menampilkan data pada browser.
  3. Controller, adalah kode program (berupa OOP class) yang digunakan untuk mengontrol aliran aplikasi (sebagai pengontrol model dan view).
Karena Model View Controller (MVC) CodeIgniter juga melibatkan Object Oriented Programming, maka disarankan anda juga mencari literatur lain yang membahas secara khusus tentang OOP di PHP. hal ini akan sangat membantu anda dalam mempelajari bab-bab selanjutnya, terutama saat praktek pembuatan program absensi siswa.

       Java Server Pages (JSP) merupakan sebuah tenologi servlet-based yang digunakan pada web tier untuk menghadirkan dynamic dan static content. JSP merupakan text-based dan kebanyakan berisi templae text HTML yang digabungkan dengan spesifik tags dynamic content..
          JSP mempunyai beberapa keunggulan di antaranya adalah dapat mengakses semua library, yakni fungsi yang ditulis dalam bahasa Java. Seperti solusi scripting yang lain, JSP juga menyediakan fasilitas penanganan session, cookies dan lain sebagainya.
        Sedang Servlet adalah sebuah interface atau aplikasi yang menangani request dari client web, dan memberikan respon ke client. Jadi servlet merupakan aplikasi Java berbasis web yang dijalankan di server.
        Servlet identik dengan CGI, yaitu berupa file binary yang dijalankan oleh web server ketika ada request terhadap servlets tersebut. Servlet ditulis dalam bahasa Java dan seperti ASP mempunyai kemampuan untuk mengakses semua library Java.
       Ada korelasi yang erat antara JSP dan servlet dimana JSP lebih berperan pada lapisan presentation, sementara servlet berperan pada lapisan logic atau middle.    

Keunggulan JSP Servlet
  1.  JSPs merupakan dokumen text seperti HTML, yang menghindari format dan manipulasi yang memungkinkan String yang sangat panjang untuk menghasilkan output.
  2. JSPs lebih dikenal oleh semua orang dengan pengetahuan dari HTML, untuk memudahkan dalam pengembangan web page.
  3. JSPs memiliki built-in yang mendukung untuk penggunaan komponen software yang dapat digunakan kembali (JavaBeans). Hal ini tidak hanya membiarkan para pengembang menghindari kemungkinan menemukan kembali inti/kemudi dari tiap aplikasi, mempunyai software pendukung untuk memisahkan komponen software untuk menghandle logic promotes separation dari presentasi dan business logic
  4. JSPs, merupakan bagian solusi dari Java untuk pengembang aplikasi web, merupakan multi-platform yang tak terpisahkan dan dapat dijalankan pada berbagai container servlet yang compatible, dengan mengabaikan vendor atau sistem operasinya
  5. Dalam kaitannya dengan cara kerja JSPs, mereka tidak membutuhkan kompilasi dari para pengembang. Kompilasi ini telah ada untuk kita pada kontainer servlet. Modifikasi JSPs dideteksi secara otomatis. Hal ini secara relatif membuatnya mudah untuk dibangun     

Prinsip Kerja JSP Servlet


          
          Container servlet mengatur JSPs pada suatu cara untuk mengatur servlet itu sendiri melalui penggunaan suatu alur JSP maka dapat dijalankan dengan baik.
           JSP memiliki tiga fase alur, inisiasi, service dan destruksi. Fase fase ini sama dengan methode servlet yang diambil dari container yang berbeda. jspInit() untuk inisiasi fase, _jspService() untuk service fase dan jspDestroy() untuk mendestruksi fase.

          Pada dasarnya prinsip kerja pemakaian JSP dijelaskan berikut : pemakai yang ingin mengakses halaman Web mula-mula mengirimkan permintaan halaman Web melalui protokol HTTP (HyperText Transfer Protocol) dalam bentuk JSP (berekstensi .jsp). Permintaan ini akan disampaikan ke Web server. Kemudian Web server mengambil dokumen JSP dan mengirimkan ke JSP Servlet Engine. Bagian inilah yang melakukan pemrosesan kode-kode JSP (termasuk di dalamnya melakukan pengompilasian) dan membentuk kode HTML. Berikutnya, kode HTML ini disampaikan oleh Web server ke klien yang memintanya. Kode HTML ini selanjutnya diproses oleh browser sehingga pemakai bisa memperoleh informasi dari halaman Web yang dikehendakinya
          Pengompilasian kode JSP hanya dilakukan sekali saja, yaitu pada pemanggilan dokumen yang pertama kali. Oleh karena itu pemakai yang memanggil dokumen yang baru saja dibuat atau diperbaharui akan merasakan bahwa tanggapan terhadap permintaan halaman Web cukup lama. Untuk menghindari keadaan seperti ini, pengembang dapat memanggil terlebih dulu dokumen tersebut setelah dilakukan perubahan.
Detail pemrosesan oleh JSP Servlet engine adalah sebagai berikut:
1. Melakukan pemilahan (parsing) kode JSP,
2. Membangkitkan kode sumber Servlet,
3. Mengkompilasi kode sumber Servlet menjadi sebuah kelas,
4. Membuat instan servlet,
5. Memberikan keluaran servlet ke Web server.

Tidak ada komentar:

Posting Komentar