JSP - Arsitektur

Server web membutuhkan mesin JSP, yaitu wadah untuk memproses halaman JSP. Wadah JSP bertanggung jawab untuk mencegat permintaan untuk halaman JSP. Tutorial ini menggunakan Apache yang memiliki kontainer JSP bawaan untuk mendukung pengembangan halaman JSP.

Wadah JSP bekerja dengan server Web untuk menyediakan lingkungan runtime dan layanan lain yang dibutuhkan JSP. Ia tahu bagaimana memahami elemen khusus yang merupakan bagian dari JSP.

Diagram berikut menunjukkan posisi container JSP dan file JSP di aplikasi Web.

Pengolahan JSP

Langkah-langkah berikut menjelaskan bagaimana server web membuat halaman Web menggunakan JSP -

  • Seperti pada halaman biasa, browser Anda mengirimkan permintaan HTTP ke server web.

  • Server web mengenali bahwa permintaan HTTP adalah untuk halaman JSP dan meneruskannya ke mesin JSP. Ini dilakukan dengan menggunakan URL atau halaman JSP yang diakhiri dengan.jsp dari pada .html.

  • Mesin JSP memuat halaman JSP dari disk dan mengubahnya menjadi konten servlet. Konversi ini sangat sederhana di mana semua teks template diubah menjadi pernyataan println () dan semua elemen JSP diubah ke kode Java. Kode ini menerapkan perilaku dinamis halaman yang sesuai.

  • Mesin JSP mengkompilasi servlet menjadi kelas yang dapat dieksekusi dan meneruskan permintaan asli ke mesin servlet.

  • Bagian dari server web yang disebut mesin servlet memuat kelas Servlet dan menjalankannya. Selama eksekusi, servlet menghasilkan keluaran dalam format HTML. Output selanjutnya diteruskan ke server web oleh mesin servlet di dalam respons HTTP.

  • Server web meneruskan respons HTTP ke browser Anda dalam bentuk konten HTML statis.

  • Terakhir, browser web menangani halaman HTML yang dibuat secara dinamis di dalam respons HTTP persis seperti halaman statis.

Semua langkah yang disebutkan di atas dapat dilihat pada diagram berikut -

Biasanya, mesin JSP memeriksa untuk melihat apakah servlet untuk file JSP sudah ada dan apakah tanggal modifikasi di JSP lebih lama dari servlet. Jika JSP lebih tua dari servlet yang dihasilkan, wadah JSP mengasumsikan bahwa JSP tidak berubah dan servlet yang dihasilkan masih cocok dengan konten JSP. Ini membuat proses lebih efisien daripada dengan bahasa skrip lainnya (seperti PHP) dan karenanya lebih cepat.

Jadi di satu sisi, halaman JSP benar-benar hanyalah cara lain untuk menulis servlet tanpa harus menjadi ahli pemrograman Java. Kecuali untuk fase terjemahan, halaman JSP ditangani persis seperti servlet biasa.