Pengaturcaraan

JSP – Panduan Pantas Untuk Pemula

30 Oktober 2021

Isi kandungan

Apakah Halaman JavaServer?

The Halaman JavaServer (JSP) , teknologi sebelah pelayan, membantu pembangun untuk membangunkan halaman web, yang menggunakan HTML , XML , SABUN , dsb. Ia juga dirujuk sebagai Halaman Pelayan Jakarta . Dalam JSP, pembangun boleh membenamkan kod java dalam fail HTML bahasa. Terdapat teg unik dalam JSP, yang membenarkan penggunaan Jawa kod dalam HTML. Tag ini bermula dan berakhir dengan '<%’ dan '%>' simbol, masing-masing. Untuk menjalankan JSP, anda memerlukan pelayan web yang mengandungi bekas servlet. Sebagai contoh, anda boleh menggunakan Apache Tomcat atau Jeti .

JSP dimodelkan daripada Servis Java . Servis Java juga dipanggil Jakarta Servlet. Semasa masa larian, JSP diubah menjadi servlet; oleh itu, ia dipanggil servlets. Secara amnya, JSP ditulis dalam fail teks dan membenamkan kod HTML atau XHTML, tindakan JSP, elemen XML dan arahan JSP. JSP memainkan peranan antara muka pengguna dalam aplikasi web Java. Semua objek tersirat JSP, seperti permintaan, sesi, konfigurasi, keluar, respons, aplikasi, halaman dan pageContext, dicipta oleh bekas web .

Anda mungkin pernah menjumpai borang halaman web. Tujuan borang ini adalah untuk mengumpul data daripada pengguna yang berbeza. Dalam borang halaman web ini, JSP digunakan untuk mengambil data daripada pengguna sebagai input, menyusun data ini dalam bentuk pangkalan data dan menjana halaman web. Objektif utama JSP adalah untuk membentangkan jenis dokumen XML dan HTML. Tetapi, ia juga boleh membentangkan dokumen dalam format lain, seperti yang digunakan Aliran Output . Sambungan fail untuk JSP ialah .jsp, .jspx, .jspf dan jenis media internet ialah aplikasi/jsp.

Anda boleh menukar mana-mana fail HTML ke dalam fail JSP dengan menukar sambungan fail .html kepada .jsp . Selepas menukar sambungan, gunakan teg JSP untuk menambah kod java di dalam halaman HTML. Menggunakan JPS, pembangun boleh menjana web dinamik halaman dan halaman web bebas platform. Mari kita lihat beberapa ciri penting JSP.

Semak kami Panduan Antaramuka Komputer Manusia yang akan bagus untuk pemula.

Ciri-ciri JSP

JSP ialah salah satu cara mudah untuk mencipta kandungan web dinamik. Terdapat beberapa sebab mengapa pembangun memilih JSP untuk mencipta beberapa aplikasi. Berikut ialah beberapa ciri pilihan Halaman Pelayan Jakarta.

  • Terdapat tindakan dan teg tersuai dalam JSP. Oleh itu, panjang kod JSP bersaiz kecil.
  • Ia adalah mudah untuk menulis kod dalam JSP, kerana ia membenamkan bahasa pengaturcaraan java dalam halaman HTML atau XML.
  • JSP membenarkan pembangun mengumpul data dan memasukkannya ke dalam pangkalan data atau membaca atau menulis data ke dalam pangkalan data.
  • Teknologi bahagian pelayan ini sangat fleksibel, mudah alih dan teguh kerana ia tidak bergantung pada mana-mana pelayar atau pelayan.
  • Tidak ada keperluan untuk kod JSP untuk disusun lagi dan lagi. Ia bebas platform dan boleh dijalankan pada mana-mana konsol tanpa menyusun semula.
  • JSP menggabungkan objek tersirat, servlet dan teg tersuai. Oleh itu, pembangun menjana halaman web interaktif dan masa nyata.
  • Kami juga boleh membenamkan bahasa skrip lain dalam program JSP, seperti JavaScript, Perl, VBScript, dll. Secara lalai, Java ialah bahasa skrip JSP.

Mengapa menggunakan Halaman Pelayan Java?

Terdapat beberapa kelebihan menggunakan JSP. Mereka bertindak serupa dengan yang Antara Muka Gerbang Biasa (CGI) . Pelayan web melaksanakan semua program yang menjana halaman web dinamik pada antara muka gerbang biasa. Apabila kita membandingkan JSP dengan CGI, JSP lebih mantap dan menawarkan lebih banyak faedah kepada pembangun. Berikut ialah beberapa sebab yang akan membantu memahami cara JSP lebih berfaedah daripada CGI.

  • Pembangun boleh menambah Elemen Dinamik dalam HTML menggunakan JSP. Jika mereka menggunakan CGI, mereka perlu mencipta fail CGI yang berasingan untuk Elemen Dinamik.
  • JSP disusun dan kemudiannya dijalankan pada mana-mana platform. Sebaliknya, CGI memuatkan jurubahasa dan mentafsir kod apabila anda meminta halaman web.
  • Anda boleh menggunakan JSP dan servlet bersama-sama untuk memantau logik perniagaan. Enjin templat servlet Java menyokong model gabungan JSP dan servlet ini.
  • JSP ialah abstraksi peringkat tinggi bagi servlet Java. Halaman ini dicipta pada peringkat atas antara muka servlet Java. Oleh itu, mereka boleh mengakses semua antara muka Java utama, seperti JAXP, JDBC, JNDI, dll.
  • Dalam seni bina MVC, JSP digunakan sebagai lapisan pandangannya.
  • Semua aplikasi peringkat perusahaan dilaksanakan pada platform, dipanggil Java EE. Platform Java EE menggabungkan JSP.

Kelebihan JSP

JSP adalah lebih cekap dan kukuh daripada teknologi lain, seperti JavaScript, HTML Statik, Servlet Tulen, dll. Di sini kita akan melihat bagaimana JSP berfaedah berbanding teknologi lain.

  • Salah satu kelebihan JSP yang paling diingini ialah ia menggunakan bahasa pengaturcaraan Java untuk menulis bahagian dinamiknya. Ia tidak menggunakan Visual Basic untuk menulis kod. Kedua, ia serasi dengan yang lain beroperasi sistem.
  • Menggunakan JSP, kami membenamkan kod Java ke dalam halaman HTML. Oleh itu, mudah untuk mengubah suai HTML.
  • Ia mendapatkan semula data daripada borang web dan menghubungkannya ke pangkalan data.
  • Dalam aplikasi web, JSP memisahkan lapisan logik perniagaan daripada lapisan pembentangan.
  • JSP menggunakan bahasa pengaturcaraan Java. Oleh itu, ia juga menyokong konsep multithreading Java.

Sebelum kami meneruskan ke tutorial JSP, kami akan membimbing anda dalam menyediakan persekitaran JSP. Selain itu, anda memerlukan pengetahuan terperinci tentang pengaturcaraan Java. Beritahu kami sekarang cara untuk menyediakan persekitaran JSP pada desktop anda.

Bagaimana untuk menyediakan persekitaran JSP?

Mengapa anda perlu menyediakan persekitaran JSP? Adakah perlu untuk membetulkan persekitaran JSP pada desktop? Jika anda ingin mencipta kandungan web dinamik atau aplikasi web menggunakan JSP, anda mesti menyediakan persekitaran JSP. Persekitaran ini membolehkan pembangun menulis program JSP, menyusunnya, melaksanakannya pada mana-mana platform. Kami akan menerangkan tetapan persekitaran JSP dalam langkah di bawah:

Persediaan Kit Pembangunan Java

Langkah pertama ialah membetulkan Kit Pembangunan Java (JDK) pada desktop anda. Kit Pembangunan Java adalah perlu kerana kami membenamkan kod java dalam kod HTML menggunakan JSP. Oleh itu, persekitaran JSP memerlukan membetulkan persekitaran JDK terlebih dahulu.

Pertama, anda perlu memuat turun Kit Pembangunan Perisian Java (SDK) daripada rasmi Oracle laman web

Selepas memuat turun, buka fail .exe dan pasang dan konfigurasikannya menggunakan garis panduan yang diberikan. Kemudian, anda perlu menetapkan dua pembolehubah persekitaran, JALAN dan JAVA_HOME . Anda perlu menetapkan JALAN pembolehubah kepada lokasi desktop java , iaitu, java_install_dir/bin, dan juga JAVA_HOME berubah-ubah ke lokasi di mana terdapat javac , iaitu, java_install_dir .

Jika anda mempunyai sistem Windows dan memasang fail SDK di C:jdk1.5.0_20 lokasi, tambah laluan ini ke C:autoexec.bat fail.

|_+_|

Jika anda telah memasang fail SDK pada sistem Windows NT, 2000 atau XP, terdapat cara tetapan yang berbeza JALAN dan JAVA_HOME pembolehubah persekitaran. Anda perlu klik kanan pada Komputer saya , pilih Hartanah , ick on Maju , dan pergi ke Pembolehubah Persekitaran . Di sini, anda perlu menetapkan JALAN ke lokasi java , iaitu, Cjdk1.5.0_20in . Selepas menukar PATH, klik pada okey butang.

Sekarang kita akan tahu bagaimana untuk menetapkan pembolehubah persekitaran PATH dan JAVA_HOEM untuk sistem UNIX, seperti Solaris, Linux , dsb. Katakan kami telah memasang fail SDK dalam /usr/local/jdk1.5.0_20 . Anda perlu menambah dua arahan di bawah dalam fail .cshrc fail. Pertimbangkan bahawa kami menggunakan cangkang C.

|_+_|

Jika anda menggunakan alatan Persekitaran Pembangunan Bersepadu (IDE), seperti Eclipse, Sun ONE Studio, JBuilder, dsb., ambil contoh program java, susun dan jalankannya untuk memastikan alat IDE anda mengetahui tempat Java dipasang pada sistem anda.

Selepas memasang Java Development Kit dan menetapkan PATH dan pembolehubah persekitaran JAVA_HOME, langkah seterusnya ialah menyediakan pelayan web.

Menetapkan Pelayan Web Tomcat

Terdapat beberapa pelayan web yang tersedia hari ini yang menyokong pembangunan aplikasi web dinamik melalui JSP atau Servlets. Kami akan menggunakan pelayan web Tomcat, yang merupakan sumber terbuka dan percuma untuk digunakan. Tomcat ialah nama pendek untuk Apache Tomcat. Ia percuma untuk digunakan oleh sesiapa sahaja dan serasi dengan beberapa teknologi pelayan, seperti JavaServer Pages, Servlets, WebSocket dan Java Expression Language. Kod Java dalam Tomcat dijalankan pada Jawa tulen pelayan web HTTP.

Terdapat beberapa komponen dalam Apache Tomcat. Beritahu kami setiap komponen dan kegunaannya.

  • Bekas servlet untuk Tomcat ialah Katherine , yang menggunakan spesifikasi Sun Microsystem untuk JSP dan servlet. Nama pengguna, kata laluan dan peranan pengguna terdapat dalam elemen Realm.
  • Komponen penyambung untuk Tomcat ialah Coyote , yang serasi dengan protokol HTTP 1.1.
  • Enjin JSP dalam Tomcat ialah Jasper . Enjin ini menghuraikan fail teks JSP dan menyusunnya ke dalam kod Java.
  • Satu lagi komponen Tomcat ialah Kluster , yang menguruskan aplikasi web yang besar.

Berikut ialah langkah-langkah untuk memuat turun pelayan web Apache Tomcat.

  • Pertama, anda perlu memuat turun Apache Tomcat dari rasminya laman web

Anda mesti memuat turun versi terkini Apache Tomcat.

  • Selepas memuat turun perisian, letakkan perisian yang dimuat turun di lokasi tertentu. Contohnya, jika anda memasang Tomcat pada sistem Windows, cari fail yang dimuat turun dalam C:apache-tomcat-5.5.29 . Untuk sistem Linux atau Unix, letakkan fail itu /usr/local/apache-tomcat-5.5.29 .
  • Selepas mencari fail, buat fail CATALINA_HOME pembolehubah persekitaran. Tetapkan pembolehubah ini ke lokasi fail tomcat, seperti yang dinyatakan di atas, iaitu, untuk sistem Windows, tetapkan pembolehubah kepada C:apache-tomcat-5.5.29 , dan untuk sistem Linux, tetapkan pembolehubah kepada /usr/local/apache-tomcat-5.5.29 .

Persediaan Apache Tomcat berjaya dilakukan. Jika anda telah memasang Tomcat pada sistem Windows, ikut mana-mana dua arahan untuk memulakan aplikasi Tomcat.

|_+_|

atau

|_+_|

Jika aplikasi Tomcat anda dipasang pada sistem Linux, anda boleh menaip mana-mana arahan di bawah untuk memulakan aplikasi Tomcat.

|_+_|

Ataupun

|_+_|

Sebaik sahaja anda berjaya membuka aplikasi Tomcat, lawati http://localhost:8080/ . Anda akan melihat semua aplikasi lalai yang terdapat dalam Tomcat. Anda boleh menjalankan konfigurasi dan menjalankan aplikasi Tomcat menggunakan dokumentasi yang tersedia di laman web rasmi Tomcat.

Sekarang, kita akan melihat arahan untuk menutup aplikasi Tomcat pada sistem Windows dan Linux. Terdapat dua arahan untuk menutup aplikasi Tomcat pada sistem Windows. Mereka adalah seperti berikut:

|_+_|

Ataupun

|_+_|

Untuk sistem Linus, anda boleh mengikuti mana-mana dua arahan untuk menutup aplikasi Tomcat.

|_+_|

Ataupun

|_+_|

Persediaan CLASSPATH

Kami akan membincangkan cara menyediakan CLASSPATH untuk sistem Windows dan Linux. Jika anda memasang Tomcat pada sistem Windows, ikut baris kod di bawah untuk menyediakan CLASSPATH.

|_+_|

Jika sistem Windows anda mempunyai versi NT, 2000 atau XP, anda perlu klik kanan pada Komputer saya , pilih Hartanah , Klik pada Maju , dan pergi ke Pembolehubah Persekitaran . Di sini, anda perlu menukar nilai CLASSPATH dan klik pada okey butang.

Jika anda telah memasang Tomcat pada sistem Linux, tambahkan dua baris berikut dalam fail .cshrc. Pertimbangkan bahawa kami menggunakan cangkang C.

|_+_|

Bagaimanakah Seni Bina JSP?

Kami telah menyediakan persekitaran untuk JSP. Kami telah menggunakan Apache Tomcat untuk menjalankan halaman JSP. Untuk memproses halaman JSP, terdapat enjin JSP yang dipanggil bekas. Dalam Apache Tomcat, terdapat enjin JSP terbina dalam yang dipanggil Jasper . Oleh itu, menggunakan Jasper, pembangun boleh membuat halaman JSP. Bekas dan pelayan web bekerjasama untuk menyediakan persekitaran masa jalan atau JSP dan semua perkhidmatan lain yang diperlukan oleh JSP.

JSP

Gambar rajah di atas menggambarkan bekas JSP dan kedudukan fail JSP dan dalam mana-mana aplikasi web. Sekarang, kami akan menerangkan proses penjanaan halaman web dinamik oleh pelayan web menggunakan JSP.

  • Pertama, klien atau penyemak imbas daripada sistem Windows, Linux atau macOS menghantar permintaan HTTP ke pelayan web melalui Internet, seperti yang ditunjukkan dalam rajah di atas.
  • Pelayan web mempunyai enjin JSP di dalamnya, di mana semua fail JSP disimpan. Apabila menerima permintaan HTTP daripada klien, pelayan web mengenal pasti bahawa permintaan itu adalah untuk halaman JSP. Selepas itu, ia menghantar permintaan ini kepada enjin JSP. Pelayan web menghantar permintaan HTTP ke halaman JSP menggunakan fail yang mempunyai sambungan .jsp atau .html atau melalui URL.
  • Kini, JSP menerima permintaan HTTP yang dihantar oleh klien ke pelayan web. Kami tahu bahawa permintaan HTTP adalah untuk halaman JSP. Oleh itu, enjin memuatkan halaman tertentu dari cakera dan mengubahnya menjadi kandungan servlet. Dengan kata lain, semua teks templat ditukar menjadi pernyataan println(). Sebaliknya, transformasi ini juga menukar semua halaman JSP kepada kod Java.
  • Halaman JSP yang diminta diubah menjadi servlet. Oleh itu, servlet disusun oleh enjin JSP ke dalam kelas boleh laku. Kemudian, permintaan HTTP daripada pelanggan dihantar ke enjin servlet oleh enjin JSP.
  • Kedua-dua enjin servlet dan JSP adalah sebahagian daripada pelayan web. Enjin servlet melaksanakan kelas boleh laku yang disusun oleh enjin JSP dan menjana output format HTML. Terdapat satu lagi komponen pada pelayan web, respons HTTP. Enjin servlet menghantar output HTML ke respons HTTP.
  • Akhir sekali, pelayan web menghantar respons HTTP kepada pelayar melalui internet dalam bentuk kandungan HTML statik.

Oleh itu, anda boleh menulis servlet menggunakan halaman JSP dengan sedikit kemahiran pengaturcaraan Java. Daripada pemprosesan JSP di atas, kita boleh membuat kesimpulan bahawa ia berfungsi sama seperti servlet, kecuali untuk fasa terjemahan. Ia mengikuti seni bina 3 peringkat, mempunyai pelayan web yang menyokong halaman JSP. Sekarang, kita akan bergerak ke arah kitaran hayat JSP. Di sini kita akan membincangkan cara fail JSP melalui fasa yang berbeza dan cara ia hadir dalam bekas web.

Kitaran Hayat JSP

Kitaran hayat mana-mana komponen bermula apabila ia dicipta dan berakhir apabila ia dimusnahkan. Kitaran hayat JSP adalah serupa dengan kitaran hayat servlet. Fasa tambahan dalam kitaran hayat JSP digunakan untuk menukar dan menyusun halaman JSP menjadi servlet. Kitaran hayat JSP boleh ditakrifkan sebagai mencipta halaman JSP, mengubahnya menjadi servlet, kitaran hayat servlet dan memusnahkan halaman JSP. Mari kita lihat kitaran hayat JSP secara terperinci di bawah.

Kitaran hayat JSP melibatkan empat laluan utama seperti berikut:

  1. Kompilasi
  2. Inisialisasi
  3. Perlaksanaan
  4. Bersihkan

Kesemua empat laluan kitar hayat JSP ini adalah serupa dengan laluan kitaran hayat servlet. Rajah di bawah menggambarkan fasa di atas.

JSP

Mari kita bincangkan setiap fasa kitaran hayat JSP dan penerangannya secara terperinci.

    Kompilasi JSP

Apabila klien atau penyemak imbas menghantar permintaan HTTP untuk halaman JSP, enjin JSP yang terdapat dalam pelayan web mengesahkan sama ada halaman permintaan itu perlu disusun atau tidak. Enjin JSP menyusun halaman yang diminta jika ia tidak disusun sebelum ini atau ia tidak disusun selepas mengubah suai halaman. Penyusunan halaman melibatkan tiga langkah seperti berikut:

  • Halaman yang diminta dihuraikan oleh enjin JSP.
  • Ia kemudian mengubah halaman JSP menjadi servlet.
  • Akhir sekali, servlet akan disusun.

Apabila halaman JSP diubah menjadi servlet, the .jsp fail ditukar menjadi a .java fail. Pada masa penyusunan, the .java fail kemudiannya ditukar menjadi a .kelas fail.

    Permulaan JSP

Selepas penyusunan selesai, proses pemuatan kelas berlaku. Sumber JSP memuatkan kelas servlet, dan kelas servlet ini kemudiannya dimuatkan ke dalam bekas. Contoh kelas servlet dibuat dalam bekas. Selepas contoh kelas servlet dibuat, the jspInit () kaedah akan digunakan. Kaedah ini digunakan sekali sahaja dalam kitaran hayat JSP. Untuk permulaan khusus JSP, anda perlu mengatasi jspInit () kaedah seperti berikut:

|_+_|

Apabila jspInit () kaedah dibuat instantiated, anda perlu mencipta sambungan pangkalan data dan menjana jadual carian dalam fail.

    Pelaksanaan JSP

Selepas jspInit () kaedah adalah instantiated, yang _jspService() kaedah digunakan. Kaedah ini melayani semua permintaan yang dihantar oleh klien ke pelayan web sehingga JSP dimusnahkan.

The _jspService() kaedah melibatkan dua parameter berbeza, HttpServletRequest dan HttpServletResponse . Kaedah ini ditakrifkan seperti berikut:

|_+_|

The _jspService() kaedah bertindak balas kepada semua permintaan daripada pelanggan. Setiap kali pelanggan mengeluarkan permintaan, _jspService() kaedah dipanggil. Ia juga bertindak balas kepada semua tujuh permintaan HTTP, seperti DAPATKAN , PADAM , POS , LETAK , dsb. Anda boleh mengatasi _jspService() kaedah.

    Pembersihan JSP:

Peringkat terakhir kitaran hayat JSP ialah Pembersihan, di mana JSP akan dimusnahkan. Bekas mengeluarkan JSP dan tidak menggunakannya. Kaedah ini adalah sama seperti kaedah pemusnahan servlet. Apabila anda memerlukan untuk menutup mana-mana fail dalam pangkalan data atau menutup sambungan pangkalan data, anda boleh mengatasi fail tersebut jspDestroy() kaedah. Sintaks kaedah jspDestroy() adalah seperti berikut:

|_+_|

Sintaks dalam JSP

Dalam segmen ini, kita akan mempelajari beberapa sintaks elemen JSP, seperti tindakan, arahan, objek tersirat, ulasan, ungkapan, dll. Bahagian tutorial ini sangat penting untuk pemula dalam domain JSP. Berikut ialah panduan ringkas tentang sintaks JSP.

    Skrip kecil:

Scriptlet ialah salah satu elemen JSP yang teguh. Kita boleh menyimpan pernyataan, kaedah, pembolehubah dan ungkapan Java dalam skrip. Selain itu, ia juga boleh menyimpan unsur mana-mana bahasa skrip. Di bawah ialah elemen Scriptlet Sintaks:

Sintaks:

|_+_|

Sintaks Scriptlet di atas boleh ditulis sebagai setara XML dalam format berikut:

|_+_|

Semua teg HTML, elemen JSP dan sebarang teks lain sentiasa ditulis di luar teg Scriptlet. Kami akan melihat contoh mudah JSP di dalam halaman HTML.

Contoh:

|_+_|

Pelayan Tomcat harus dipasang pada desktop anda dan persekitarannya harus disediakan untuk menjalankan program ini. Ikuti langkah Persediaan Persekitaran di atas untuk menyediakan persekitaran pelayan Tomcat. Kami akan menyimpan fail di atas sebagai firstjsp.jsp di dalam C:apache-tomcat7.0.2webappsROOT folder. Selepas menyimpan fail, pergi ke penyemak imbas dan taip URL, http://localhost:8080/firstjsp.jsp. Kod di atas akan memaparkan Panduan Ringkas JSP dan alamat IP sistem anda.

    Pengisytiharan

Apabila anda memerlukan pembolehubah atau kaedah untuk digunakan dalam kod Java, pengisytiharan JSP mengisytiharkannya. Sebelum anda menggunakan sebarang pembolehubah atau kaedah dalam kod Java, anda mesti mengisytiharkannya menggunakan Perisytiharan JSP. Sintaks Pengisytiharan JSP adalah seperti yang diberikan di bawah:

Sintaks:

|_+_|

Sintaks di atas ditulis dalam XML seperti berikut:

|_+_|

Sekarang, mari kita lihat contoh pengisytiharan JSP.

Contoh:

|_+_|
    Ungkapan

Ungkapan dalam JSP mengandungi ungkapan bahasa skrip. Ungkapan ini boleh dinilai, diubah menjadi String dan ditambah pada fail JSP, tempat ungkapan itu muncul. Anda boleh menggunakan ungkapan JSP dengan teks, kerana ia boleh diubah menjadi String. Ia tidak wajib untuk menandakan ungkapan JSP di dalam teg HTML. Satu perkara penting yang perlu diingat semasa menulis ungkapan JSP ialah mereka tidak menggunakan koma bertitik untuk menamatkan ungkapan.

Sintaks:

|_+_|

Sintaks di atas boleh ditulis ke dalam persamaan XMLnya seperti berikut:

|_+_|

Contoh berikut akan membantu anda untuk mengetahui cara menggunakan ungkapan JSP dalam HTML.

|_+_|

Anda akan mendapat output sebagai tarikh dan masa semasa seperti berikut:

|_+_|
    Komen

Komen ialah kenyataan yang bukan untuk pelaksanaan. Mereka hanya dimaksudkan untuk pengaturcara dan pembaca. Dalam JSP, ulasan diabaikan oleh bekas. Jika anda ingin menyembunyikan sebahagian daripada program JSP, anda boleh mengulas bahagian tersebut menggunakan ulasan JSP. Berikut ialah sintaks untuk ulasan JSP.

Sintaks:

|_+_|

Kami akan melaksanakan contoh di bawah yang mengandungi ulasan JSP di dalamnya.

Contoh:

|_+_|

Hasil kod ini diberikan di bawah.

|_+_|

Terdapat banyak cara lain dalam JSP untuk menentukan komen. Di bawah ialah enam sintaks ulasan berbeza dan kegunaannya:

Perkara di atas dirujuk sebagai ulasan HTML dan penyemak imbas mengabaikan aksara atau perkataan yang ditulis di dalam ulasan.

    %>

menyiratkan literal statik.

    <\%

Komen di atas juga merujuk kepada literal statik.

Ia menentukan petikan berganda yang digunakan dalam atribut.

    '

Ia menentukan petikan tunggal yang digunakan dalam atribut.

    Arahan

Terdapat tiga arahan dalam JSP, , , dan . The arahan digunakan untuk menentukan atribut halaman, seperti halaman ralat, bahasa skrip dan keperluan penimbalan. Arahan yang lain, , termasuk fail khusus yang digunakan semasa fasa terjemahan kitaran hayat JSP. Akhir sekali, yang arahan digunakan untuk mengisytiharkan perpustakaan tab dan tindakan tersuai yang diperlukan dalam halaman JSP. Apabila arahan JSP digunakan, ia mempengaruhi struktur kelas servlet. Berikut ialah sintaks untuk arahan JSP.

|_+_|
    Tindakan

Tindakan ialah fungsi yang telah ditakrifkan. Tindakan JSP digunakan untuk mengawal kelakuan enjin servlet. Tindakan ini menambah binaan dalam kod XML. Menggunakan tindakan JSP, anda boleh memasukkan mana-mana fail secara dinamik, mencipta HTML untuk pemalam Java atau menggunakan semula komponen JavaBeans. Di bawah ialah sintaks tindakan JSP.

Sintaks:

|_+_|

Kami menyenaraikan beberapa tindakan JSP yang penting dan penerangannya di bawah:

    jsp:useBean: Tindakan ini membuat instantiate atau mengenal pasti JavaBean.jsp:getProperty: Anda boleh menggunakan tindakan jsp:getProperty untuk menambahkan sifat JavaBean ke dalam output.jsp:setProperty: Tindakan ini membetulkan sifat JavaBean.jsp:termasuk: Apabila pengguna meminta halaman, tindakan ini menambah fail.jsp:plugin: Ia mencipta teg OBJECT atau EMBED dan kod khusus penyemak imbas untuk Java Plugin.jsp:atribut: Tindakan ini digunakan untuk mentakrifkan atribut elemen XML yang ditakrifkan secara dinamik.jsp:ke hadapan: Tindakan ini membawa pengguna ke halaman baharu.jsp:elemen: Apabila anda perlu mentakrifkan elemen XML secara dinamik, gunakan tindakan ini.jsp:teks: Tindakan ini membolehkan pengguna menambah teks templat pada halaman JSP.jsp:badan: Ia digunakan untuk mentakrifkan badan elemen XML, yang ditakrifkan secara dinamik.
    Objek Tersirat

Terdapat sembilan objek tersirat dalam JSP, permintaan, respons, sesi, keluar, pageContext, konfigurasi, aplikasi, halaman dan pengecualian. Beritahu kami tentang setiap objek tersirat secara terperinci di sini.

    permintaan: Objek permintaan ialah HttpServletRequest, dikaitkan dengan permintaan pelanggan.tindak balas: Objek respons ialah HttpServletResponse, dikaitkan dengan respons pelayan kepada klien.sesi: Objek ini melibatkan HttpSession dan dikaitkan dengan objek permintaan klien.keluar: Satu lagi objek tersirat telah keluar. Ia digunakan untuk menghantar output kepada klien menggunakan objek PrintWriter.halamanKonteks: Objek tersirat ini menentukan aplikasi ciri khusus pelayan. Satu contoh ciri khusus pelayan ialah JspWriters.konfigurasi: Objek ini melibatkan objek ServletConfig, yang digunakan dengan halaman JSP.permohonan: Objek ServletContext JSP digunakan dengan konteks aplikasi.muka surat: Objek tersirat halaman memanggil semua kaedah, yang ditakrifkan oleh kelas servlet.Pengecualian: JSP yang ditetapkan boleh mengakses data pengecualian menggunakan objek Pengecualian.
    Penyata Aliran Kawalan

JSP juga menggunakan penyataan aliran kawalan, penyataan membuat keputusan dan gelung. Di sini kita akan melihat bagaimana pernyataan dan gelung membuat keputusan digunakan dalam pengaturcaraan JSP.

Kenyataan Membuat Keputusan

Kenyataan membuat keputusan digunakan untuk memutuskan pilihan yang ada. Terdapat dua cara untuk melaksanakan pernyataan membuat keputusan. Satu menggunakan pernyataan if_else, dan satu lagi menggunakan pernyataan suis-case. Setiap syarat if and else disertakan dalam skrip yang berasingan. Mari kita perhatikan contoh pernyataan if_else dalam JSP.

Contoh:

|_+_|

Di sini, kami telah mengisytiharkan 'bulan=3' dan menyatakan syarat dalam pernyataan if_else. Oleh itu output akan menjadi:

|_+_|

Sekarang, kami akan melaksanakan suis…penyataan kes. Kod di bawah agak berbeza daripada kod di atas, kerana syarat dalam kod di bawah dinyatakan dalam satu Scriptlet.

Contoh:

|_+_|

Pengeluaran:

|_+_|

Penyata Gelung

Kami menggunakan gelung dalam program untuk mengulang arahan tertentu beberapa kali tertentu. Terdapat tiga jenis gelung berbeza yang disokong oleh JSP, untuk, sementara, dan lakukan...semasa. Mari kita lihat contoh setiap jenis gelung di bawah.

Untuk Gelung:

|_+_|

Pengeluaran:

|_+_|

Gelung Semasa:

|_+_|

Pengeluaran:

|_+_|
    Operator dalam JSP

Semua operator logik dan aritmetik yang disokong oleh Java digunakan dalam JSP. Operator digunakan dalam ungkapan JSP untuk menilai mereka. Operator yang mempunyai keutamaan tertinggi dinilai dahulu, dan dengan keutamaan terendah dinilai akhirnya. Kami telah menyenaraikan semua pengendali JSP dengan keutamaan tertinggi pertama, keutamaan kedua tertinggi seterusnya, dan seterusnya.

    Postfix: Terdapat tiga operator postfix ‘()’. ‘[]’, dan ‘.’. Semua pengendali ini mempunyai pergaulan kiri ke kanan.Unary: Operator unary ialah ‘++’, ‘–’, ‘!’, dan ‘~’ mempunyai hak ke kiri persekutuan.Berganda: Terdapat tiga pengendali darab, ‘*’, ‘/’, dan ‘%’. Mereka mempunyai pergaulan kiri ke kanan.aditif: Operator aditif ialah '+' dan '-'. Mereka juga mempunyai pergaulan kiri ke kanan.Beralih: Operator Shift, ‘>>’, ‘>>>’, dan ‘<<’ have left to right associativity. perhubungan: Terdapat empat pengendali hubungan, ‘>’, ‘=’, dan ‘<=’. All of them have left to right associativity. Kesaksamaan: Pengendali kesaksamaan ialah ‘==’ dan ‘!=’ mempunyai perkaitan kiri ke kanan.Bitwise DAN: Operator AND bitwise (&) mempunyai perkaitan kiri ke kanan.Bitwise XOR: Operator XOR bitwise (^) mempunyai perkaitan kiri ke kanan.Bitwise ATAU: Operator OR bitwise (|) mempunyai perkaitan kiri ke kanan.Logik DAN: Operator logik AND (&&) mempunyai perkaitan kiri ke kanan.Logik ATAU: Operator OR logik (||) mempunyai perkaitan kiri ke kanan.Bersyarat: Pengendali bersyarat (?:) mempunyai hak persekutuan kiri.Tugasan: Terdapat beberapa pengendali tugasan, seperti =, +=, -+, *=, %=, /=, >>=,<<=, &=, ^=, and |=. All these operators have the right to left associativity. Perenggan: Operator koma (‘) mempunyai perkaitan kiri ke kanan.

JSP menyokong lima literal atau jenis data yang berbeza, Boolean, integer, floating-point, String dan NULL. Literal Boolean mengembalikan sama ada benar atau palsu sebagai hasilnya. Integer digunakan untuk menentukan nombor, dan Titik Terapung digunakan untuk mengisytiharkan nombor perpuluhan dalam program JSP. Jenis data String dalam JSP berbeza daripada bahasa Java. Jenis data NULL menentukan nilai nol.

Tindakan JSP

Kami telah melihat apakah tindakan JSP itu. Kami juga telah melihat semua tindakan JSP dalam ringkasan di atas. Tindakan tidak lain hanyalah fungsi yang mengawal kelakuan enjin JSP. Mari kita ingat semula sintaks tindakan JSP.

Sintaks:

|_+_|

Tindakan JSP ialah jsp:include, jsp:useBean, jsp:setProperty, jsp:getProperty, jsp:forward, jsp:element, jsp:plugin, jsp:attribute, jsp:body, dan jsp:text. Semua tindakan JSP ini mempunyai dua komponen biasa, ID dan Skop.

Komponen ID digunakan untuk mengenal pasti secara unik sebarang tindakan JSP. Komponen tindakan JSP ini digunakan dalam program JSP, mentakrifkan tindakan yang akan dilakukan. Elemen lain ialah Skop, yang digunakan untuk mengenal pasti kitaran hayat tindakan JSP. Menggunakan ID tindakan, jangka hayatnya ditentukan. Oleh itu, elemen ID dan elemen Skop adalah berkadar terus. Komponen Skop mungkin mengambil nilai yang mungkin: halaman, sesi, permintaan atau aplikasi.

Aksi

Tindakan useBean dalam JSP mula-mula mencari objek yang mempunyai atribut ID dan Skop. Jika objek tidak ditemui, tindakan ini mencipta objek untuk atribut ID dan Skop tertentu itu. Berikut ialah cara untuk memuatkan kelas useBean.

|_+_|

Selepas memuatkan kelas Bean, anda boleh menggunakan dua tindakan JSP yang lain, jsp:setProperty dan jsp:getProperty . Tindakan ini digunakan untuk mengubah suai dan mengambil sifat kacang. Tindakan useBean menggunakan tiga yang berbeza sifat-sifat , kelas , taip , dan beanName. The kelas atribut memberikan nama pakej kacang. Anda boleh menggunakan taip elemen untuk menentukan jenis pembolehubah untuk objek yang kita rujuk. Akhir sekali, beanName memberikan nama kacang. Kaedah instantiate() menentukan nama kacang.

Aksi

Tindakan itu digunakan untuk menetapkan sifat Bean. Satu-satunya keperluan untuk menetapkan sifat kacang ialah kacang mesti ditakrifkan terlebih dahulu. Terdapat dua cara untuk menggunakan tindakan seperti berikut:

Cara pertama ialah menggunakan bahagian luar dan selepas komponen.

|_+_|

Dalam sintaks di atas, walaupun elemen baharu tidak digunakan atau unsur sedia ada tidak ditemui, tindakan itu dilaksanakan.

Cara lain untuk menentukan tindakan adalah di dalam komponen jsp:useBean.

|_+_|

Berbeza dengan cara pertama menggunakan , cara kedua dilaksanakan hanya jika yang sedia ada ditemui atau yang baharu dijadikan instantiated.

Jsp:setProperty melibatkan empat atribut berbeza, nama , harta benda , nilai , dan berhenti . The nama atribut memberikan nama kepada kacang yang sifatnya akan ditetapkan. Satu lagi sifat, harta benda , mentakrifkan harta. The nilai ialah nilai yang diberikan kepada harta itu, dan berhenti atribut mentakrifkan nama parameter yang diterima oleh harta itu.

Aksi

Kami telah melihat bahawa tindakan jsp:setProperty menetapkan nilai harta tersebut. Di sini, tindakan mengambil nilai harta benda. Selepas mengambil nilai, ia mengubahnya menjadi String dan menambahkannya pada hasilnya.

Tindakan itu hanya mempunyai dua atribut, nama dan harta. The nama atribut mentakrifkan nama kacang yang memegang sifat tertentu, dan harta benda atribut mentakrifkan nama harta Bean. Di bawah ialah sintaks tindakan:

|_+_|

Mari kita perhatikan satu contoh yang mengandungi contoh kekacang. Simpan fail di bawah sebagai ContohBean.java .

|_+_|

Selepas menulis kod ini dalam ContohBean.java fail, susun untuk menjana fail ContohBean.class fail. Sekarang, salin ContohBean.class fail ke C:apache-tomcat-7.0.2webappsWEB-INFclassesaction folder. Pastikan anda juga telah menetapkan KELAS pembolehubah.

Anda kini perlu mencipta fail main.jsp dan tulis kod di bawah ke dalamnya.

|_+_|

Pengeluaran:

|_+_|

Aksi

Apabila anda ingin memasukkan elemen Java ke dalam program JSP, tindakan itu digunakan. Tindakan ini juga mengenal pasti jenis penyemak imbas dan menambah atau tag ke dalam program JSP. Katakan anda memerlukan komponen Java, yang pemalamnya tidak tersedia. Tindakan itu memuat turun pemalam yang diperlukan untuk melaksanakan komponen Java, seperti Applet atau Bean. Terdapat berbilang atribut dalam tindakan pemalam, yang sepadan dengan teg HTML.

Di bawah ialah satu contoh tindakan yang mudah.

|_+_|

Dalam kod di atas, kita boleh melihat elemen baru, . Apabila komponen gagal, elemen ini menghantar rentetan ralat kepada pengguna.

Tindakan, seperti , , dan mentakrifkan elemen XML. Semua elemen XML dijana pada masa larian dan bukan pada masa penyusunan, iaitu, ia dijana secara dinamik.

Aksi

Apabila anda ingin menamatkan tindakan halaman semasa dan memajukannya ke sumber lain, anda boleh menggunakan tindakan. Sintaks tindakan ini diberikan seperti berikut:

|_+_|

Hanya satu atribut dikaitkan dengan tindakan, iaitu muka surat . Halaman ini mesti termasuk URL relatif sumber, tempat tindakan dipindahkan. Sumber boleh menjadi halaman JSP, Java Servlet, dan halaman statik.

Sekarang, kita akan melihat satu contoh mudah tindakan itu. Kami akan membuat dua fail, tarikh.jsp dan main.jsp . Fail date.jsp akan memaparkan tarikh semasa dan fail main.jsp mengandungi tindakan.

fail date.jsp

|_+_|

fail main.jsp

|_+_|

Anda mesti menyimpan kedua-dua fail dalam direktori ROOT. Kami kini akan mengakses fail main.jsp untuk hasilnya. Ia tidak akan memaparkan kandungan daripada fail main.jsp; sebaliknya, ia akan memaparkan kandungan daripada fail date.jsp, kerana ia adalah fail yang dimajukan.

Pengeluaran:

|_+_|

Aksi

Menggunakan tindakan itu, kami boleh menulis templat teks atau dokumen dalam halaman JSP. Di bawah ialah sintaks tindakan:

|_+_|

Di sini, templat hanya mengandungi teks dan ungkapan EL. Tiada unsur lain boleh hadir dalam templat. Dalam fail XML, jangan gunakan ungkapan sebagai ${whatever > 0} , kerana tanda ini tidak dibenarkan atau menyalahi undang-undang. Sebaliknya, anda boleh menggunakan ${whatever gt 0} .

Arahan JSP

Dalam bahagian sintaks, kita telah melihat apakah direktori dalam JSP. Di sini, kami akan mempelajari direktori JSP secara terperinci. Arahan adalah penting dalam JSP, kerana ia memerintah dan mengarahkan bekas JSP untuk mengendalikan dan mengawal elemen pemprosesan JSP tertentu. Keseluruhan struktur kelas servlet terjejas kerana arahan JSP.

Sintaks:

|_+_|

Atribut dalam arahan adalah dalam bentuk nilai kunci. Terdapat beberapa atribut dalam arahan, dan setiap satu dipisahkan dengan koma. Dalam sintaks di atas, kita boleh melihat ruang antara '<%@’ dan nama arahan, dan nilai dan '%>.' Ruang ini adalah pilihan. Tidak perlu risau jika anda tidak menambah ruang di antara mereka. Kami telah melihat di atas bahawa terdapat tiga teg arahan, , , dan . Mari kita bincangkan setiap teg arahan ini secara terperinci.

Arahan Halaman

Arahan Halaman memberikan arahan kepada halaman semasa bekas. Anda boleh memasukkan arahan halaman di mana-mana sahaja dalam program JSP anda. Secara amnya, arahan halaman digunakan di bahagian atas halaman JSP. Sintaks arahan halaman ialah:

|_+_|

Sintaks di atas ditulis dalam XML seperti yang diberikan di bawah:

|_+_|

Terdapat 13 atribut yang dikaitkan dengan arahan halaman, seperti yang dijelaskan di bawah.

    autoFlush: Atribut ini mengawal kelakuan penimbal keluaran servlet.errorPage: errorPage memaparkan URL JSP yang lain, yang membuang pengecualian masa jalan yang tidak ditanda Java.memanjang: Servlet yang dijana harus memanjangkan superclass yang ditentukan.penampan: Atribut penimbal mentakrifkan model penimbalan aliran keluaran.jenis kandungan: Atribut ini mentakrifkan skema untuk pengekodan aksara.isErrorPage: Ia mencadangkan sama ada halaman JSP semasa ialah URL yang ditakrifkan oleh atribut errorPage halaman JSP yang lain.info: Ia menentukan String, yang boleh diakses oleh kaedah getServletInfo().bahasa: Atribut ini menunjukkan bahasa pengaturcaraan yang digunakan dalam halaman JSP.diketepikan: Ia menentukan sama ada ungkapan EL dalam halaman JSP akan diabaikan.import: Kenyataan ini menunjukkan semua pakej dan kelas yang diperlukan untuk ditambah dalam JSP. Dalam Java, pernyataan import Java menentukan semua kelas dan pakej yang diperlukan untuk disertakan dalam program Java.isThreadSafe: Atribut ini menentukan model benang servlet.sesi: Atribut sesi mengesahkan sama ada halaman JSP mengambil bahagian dalam sesi HTTP atau tidak.isScriptingEnabled: Elemen ini menentukan sama ada untuk menggunakan elemen skrip dalam halaman JSP.

Arahan Sertakan

Semasa fasa penterjemahan, termasuk arahan digunakan untuk memasukkan fail dalam halaman JSP. Arahan ini juga untuk mengarahkan bekas tentang menggabungkan semua fail luaran dengan halaman JSP. Memandangkan arahan halaman disertakan hanya di bahagian atas halaman JSP, arahan sertakan boleh digunakan di mana-mana sahaja pada halaman.

Sintaks:

|_+_|

Sintaks di atas ditulis dalam XML seperti berikut:

|_+_|

Di sini, nama fail ialah url relatif. Jika anda tidak menentukan laluan fail, pengkompil menganggap bahawa fail anda ada di lokasi JSP.

Direktori taglib

Jenis direktori terakhir ialah taglib . Direktori ini menyediakan banyak maklumat tentang halaman JSP, seperti set teg tersuai yang digunakan, lokasi perpustakaan dan mencari teg tersuai daripada halaman JSP. Di bawah ialah sintaks direktori taglib.

|_+_|

Sintaks di atas boleh ditulis dalam XML seperti berikut:

|_+_|

sifat, benci , menentukan lokasi yang boleh difahami oleh bekas dan awalan atribut memberitahu bekas tentang komposisi tindakan tersuai.

Objek Tersirat JSP

Objek tersirat JSP ialah objek Java. Bekas JSP membenarkan pembangun menggunakan objek tersirat ini dalam setiap halaman JSP tanpa diisytiharkan secara eksplisit. Objek ini juga disebut sebagai pembolehubah yang telah ditetapkan . Terdapat sembilan objek tersirat yang berbeza: permintaan, respons, keluar, sesi, aplikasi, halaman, pageContext, konfigurasi dan pengecualian.

Objek permintaan

The javax.servlet.http.HttpServletRequest objek mencipta contoh yang dipanggil permintaan objek. Apabila pelanggan atau pengguna meminta halaman tertentu, enjin JSP menjana objek baharu yang mewakili permintaan pelanggan. The permintaan objek menawarkan beberapa kaedah untuk mengekstrak maklumat pengepala HTTP, seperti kaedah HTTP, kuki, dsb.

Objek balas

The javax.servlet.http.HttpServletResponse objek mencipta contoh yang dipanggil tindak balas objek. Memandangkan enjin JSP mencipta objek baharu apabila pengguna meminta halaman tertentu, ia juga mencipta objek yang mewakili responsnya. Menggunakan objek tindak balas, anda boleh memasukkan kuki baharu pada program JSP, seperti kod status HTTP, setem, dsb.

Objek keluar

The javax.servlet.jsp.JspWriter objek mencipta contoh yang dipanggil keluar objek. Enjin JSP boleh menambah kandungan pada respons yang diminta oleh pelanggan. The JspWriter objek mempunyai kaedah yang hampir sama yang terdapat dalam java.io.PrintWriter kelas. Terdapat beberapa kaedah tambahan dalam JspWriter objek yang digunakan untuk penimbal dan melontar IOException.

Objek aplikasi

The javax.servlet.ServletContext mencipta contoh yang dipanggil an permohonan objek, yang bertindak sebagai pembungkus untuk ServletContext objek. Objek ini mewakili halaman JSP. Apabila halaman JSP dimulakan, objek aplikasi dicipta. Objek ini akan dialih keluar, kerana halaman JSP dimusnahkan menggunakan kaedah jspDestroy().

Objek sesi

The javax.servlet.http.HttpSession mencipta contoh yang dipanggil sesi objek. Objek ini berfungsi sama seperti ia berfungsi dalam Java Servlets. Objektif utama objek sesi adalah untuk menjejaki sesi antara permintaan pelanggan.

Objek pengecualian

Pembalut yang mengandungi pengecualian dari halaman JSP sebelumnya dipanggil objek pengecualian. Apabila keadaan ralat berlaku, objek pengecualian digunakan untuk mengendalikannya.

Objek halaman

Objek halaman memberikan rujukan kepada contoh halaman. Ia mewakili keseluruhan halaman JSP. ' ini' objek dan objek halaman adalah sinonim antara satu sama lain.

Objek halamanKonteks

The javax.servlet.jsp.PageContext mencipta contoh yang dipanggil halamanKonteks objek. Seperti yang muka surat objek, yang halamanKonteks objek juga mewakili halaman JSP yang lengkap. Menggunakan atribut objek pageContext, kita boleh memperoleh objek tersirat lain, seperti permohonan , konfigurasi , sesi , dan keluar . Objek ini juga menyimpan maklumat, seperti skop halaman, errorPageURL dan maklumat penimbal. Terdapat 40 kaedah yang disokong oleh objek pageContext.

Objek konfigurasi

The javax.servlet.ServletConfig mencipta contoh yang dipanggil konfigurasi objek. Objek ini bertindak sebagai pembungkus untuk ServletConfig objek. Pengguna boleh menggunakan objek ini untuk mengakses parameter permulaan enjin servlet atau JSP. Kaedah di bawah ialah kaedah yang digunakan dalam halaman JSP menggunakan objek konfigurasi.

|_+_|

Permintaan Pelanggan JSP

Pelayan web mendapat banyak maklumat apabila pelayar atau klien meminta halaman web tertentu. Maklumat ini tidak boleh digunakan secara langsung, kerana ia bergerak melalui pengepala permintaan HTTP. Pengepala HTTP mengandungi beberapa elemen yang menyimpan maklumat apabila penyemak imbas meminta halaman web. Elemen ini ialah terima, terima-charset, terima-pengekodan, terima-bahasa, sambungan, kebenaran, kuki, kandungan-panjang, jika-diubah suai-sejak, hos, perujuk, jika-tidak diubah-sejak dan ejen pengguna.

Objek HTTPServletRequest

Objek javax.servlet.http.HttpServletRequest mencipta contoh yang dipanggil objek permintaan. Apabila mana-mana pengguna meminta halaman tertentu, enjin JSP menjana objek baharu. Objektif utama objek permintaan adalah untuk mendapatkan semula maklumat HTTP, seperti data, kaedah HTTP, kuki, dll. Di bawah ialah beberapa kaedah yang membaca maklumat pengepala HTTP daripada program JSP.

    Penghitungan getAttributeNames(): Kaedah ini menghasilkan Penghitungan, yang mengandungi nama atribut yang tersedia untuk permintaan ini.Kuki[] getCookies(): Apabila pelanggan menghantar permintaan, ia mengandungi objek kuki. Oleh itu, kaedah ini menghasilkan tatasusunan, yang memegang semua objek kuki ini.Penghitungan getParameterNames(): Kaedah ini menghasilkan penghitungan objek String. Penghitungan ini memegang nama parameter yang terdapat dalam permintaan.Penghitungan getHeaderNames(): Ia menghasilkan penghitungan yang memegang nama pengepala yang terdapat dalam permintaan ini.HttpSession getSession(buat boolean): Kaedah HttpSession getSession(boolean create) menghasilkan HttpSession semasa yang berkaitan dengan permintaan ini. Jika tiada sesi hadir pada masa itu dan boolean untuk cipta adalah benar, kaedah ini menghasilkan sesi baharu.HttpSession getSession(): Kaedah ini mengembalikan sesi semasa yang berkaitan dengan permintaan. Jika sesi tidak tersedia, kaedah ini mencipta yang baharu dan mengembalikannya.Objek getAttribute(Nama rentetan): Ia menghasilkan nilai atribut yang mempunyai nama sebagai objek. Jika tiada nama untuk atribut, ia mengembalikan NULL.getLocale setempat (): Ia memberikan kembali Tempatan, di mana pelanggan akan menerima kandungan.String getAuthType(): Kaedah ini menentukan nama skim pengesahan yang digunakan untuk memulihara servlet. Jika JSP tidak dipelihara, ia mengembalikan NULL.ServletInputStream getInputStream(): ServletInputStream mengambil kandungan permintaan dalam bentuk binari.String getContent Type(): Kaedah ini memberikan kembali jenis MIME badan permintaan. Jika jenisnya tidak diketahui, ia mengembalikan NULL.String getCharacterEncoding(): Nama pengekodan aksara yang terdapat dalam kandungan permintaan dihasilkan melalui kaedah ini.String getHeader(String name): Ia mengembalikan nilai pengepala permintaan dalam format Rentetan.String getContextPath(): Ia menghasilkan bahagian URI permintaan.String getParameter(String name): Kaedah ini menghasilkan nilai parameter permintaan dalam bentuk String. Jika parameter permintaan tidak wujud, ia mengembalikan NULL.String getMethod(): Kaedah String getMethod() menghasilkan nama permintaan HTTP, yang digunakan dengan permintaan semasa.String getProtocol(): Permintaan dalam JSP menggunakan protokol tertentu. Kaedah ini mengembalikan nama dan versi protokol.Rentetan getPathInfo(): Apabila pelanggan membuat permintaan, ia menghantar URL. Kaedah String getPathInfo() mengembalikan maklumat tambahan tentang laluan yang berkaitan dengan URL.String getRemoteAddr(): Kaedah ini menghasilkan alamat Internet Protocol (IP) sistem pelanggan.String getRemoteUser(): Ia menghasilkan log masuk pelanggan yang disahkan membuat permintaan. Jika pengguna tidak disahkan, ia mengembalikan NULL.Rentetan getRemoteHost(): Jika nama pelanggan yang membuat permintaan ingin diambil, kaedah String getRemoteHost() boleh digunakan.String getRequestedSessionId(): Kaedah ini memberikan kembali ID sesi, yang ditakrifkan oleh klien.String getRequestURI(): Ia mengembalikan URL permintaan daripada nama protokol.String[] getParameterValues(Nama rentetan): Kaedah ini memberikan kembali tatasusunan yang mengandungi objek String. Objek ini memegang nilai semua parameter yang terdapat dalam permintaan.String getServletPath(): Ia juga mengembalikan URL permintaan.int getContentLength(): Ia mengembalikan panjang badan permintaan dalam bait.boolean isSecure(): Ia memberikan kembali nilai boolean yang menyatakan sama ada permintaan dibuat melalui saluran selamat atau tidak.int getServletPort(): Kaedah ini memberikan nombor port permintaan.int getIntHeader(Nama rentetan): Kaedah ini menghasilkan nilai pengepala permintaan dalam format integer.

Contoh Permintaan Pengepala HTTP

Di sini, kita akan melihat satu contoh mudah Permintaan Pengepala HTTP. Dalam contoh permintaan pengepala HTTP, kami akan menggunakan getHeaderName() kaedah untuk membaca maklumat pengepala HTTP. Ia menghasilkan penghitungan yang mengandungi maklumat pengepala HTTP permintaan. Kaedah hasmoreElements() menentukan bila kaedah nextElement() harus berhenti.

Contoh:

|_+_|

Tulis kod di atas dalam main.jsp fail dan aksesnya untuk membaca maklumat pengepala permintaan HTTP. Ia akan memberi anda semua maklumat tentang pengepala permintaan HTTP, seperti hos, sambungan, kawalan cache, ejen pengguna, terima, terima-bahasa dan terima-pengekodan.

Respons Pelayan JSP

Apabila klien atau penyemak imbas meminta halaman web, pelayan web bertindak balas kepada permintaan HTTP yang dipanggil respons. Respons ini termasuk baris kosong, dokumen, baris status dan beberapa pengepala respons. Respons HTTP kelihatan seperti berikut:

|_+_|

Dalam kod di atas, versi HTTP ialah HTTP/1.1 , 200 ialah kod status, dan okey ialah mesej kepada kod status. Terdapat berbilang pengepala respons, mempunyai versi HTTP/1.1 dihantar oleh pelayan web ke penyemak imbas. Pengepala respons ini ialah kawalan cache, benarkan, pelupusan kandungan, sambungan, panjang kandungan, pengekodan kandungan, bahasa kandungan, tamat tempoh, jenis kandungan, lokasi, diubah suai terakhir, set-kuki, muat semula dan cuba semula selepas .

Objek HttpServletResponse

javax.servlet.http.HttpServletResponse mencipta contoh yang dipanggil objek tindak balas. Objek ini dicipta oleh pelayan web, yang mewakili respons yang dihantar kepada klien. Objek tindak balas juga dikaitkan dengan antara muka yang diperlukan untuk penciptaan pengepala HTTP. Pengaturcara boleh menambah kuki baharu, kod status HTTP dan setem tarikh dalam program JSP. Berikut ialah beberapa kaedah atau fungsi yang digunakan untuk menambah pengepala respons HTTP dalam program servlet.

    String encodeURL(String url): Kaedah ini digunakan untuk pengekodan URL tertentu yang termasuk ID sesi. Jika pengekodan diperlukan, kaedah ini menghantar URL tanpa mengubah.String encodeRedirectURL(String url): URL yang disertakan dalam fungsi sendRedirect dikodkan. Jika pengekodan tidak diperlukan, URL kekal tidak berubah.boolean isCommitted(): Fungsi ini menghasilkan nilai boolean, menyatakan sama ada respons telah dilakukan.boolean mengandungiHeader(Nama rentetan): Ia juga menghasilkan nilai boolean yang menentukan sama ada pengepala respons yang mempunyai nama telah ditetapkan.void addHeader(Nama rentetan, nilai rentetan): Fungsi ini termasuk pengepala respons dengan nama dan nilainya.void addDateHeader(Nama rentetan, tarikh panjang): Ia juga termasuk pengepala respons baharu dengan nama dan tarikhnya.void flushBuffer(): Fungsi ini secara paksa menulis kandungan yang terdapat dalam penimbal kepada klien.void addIntHeader(Nama rentetan, nilai int): Fungsi ini termasuk pengepala respons baharu dengan namanya dan nilai integer.void resetBuffer(): Ia mengalih keluar atau mengosongkan semua kandungan daripada penimbal asas tetapi tidak mengosongkan pengepala dan kod status.void reset(): Fungsi ini mengalih keluar atau memadam semua data yang terdapat dalam penimbal, bersama dengan kod status dan pengepala.void sendError(int sc, String msg): Ia mengakibatkan mesej ralat mempunyai status tertentu dan dihantar kepada klien.void sendError(int sc): Fungsi ini juga menghantar mesej ralat kepada klien dengan kod status tertentu dengan memadamkan data daripada penimbal.void setBufferSize(saiz int): Fungsi ini membetulkan saiz penimbal untuk badan tindak balas.void setIntHeader(Nama rentetan, nilai int): Fungsi ini menetapkan pengepala respons dengan namanya dan nilai integer tertentu.

Contoh Respons Pengepala HTTP

Berikut ialah contoh respons pengepala HTTP, yang menggunakan fungsi setIntHeader() untuk menetapkan pengepala Refresh.

Contoh:

|_+_|

Simpan kod di atas dengan nama fail, main.jsp . Selepas setiap 4 saat, masa semasa sistem akan dipaparkan, seperti yang ditunjukkan di bawah.

Pengeluaran:

|_+_|

Kod Status HTTP dalam JSP

Permintaan HTTP dan Respons HTTP mempunyai struktur yang sama seperti berikut:

  • Pertama, ia termasuk baris status, Carriage Return (CRLF) dan Line Feed. Suapan Baris membayangkan baris baharu.
  • Seterusnya ialah sifar atau lebih baris pengepala dan Carriage Return (CRLF).
  • Kemudian datang baris kosong, CRLF.
  • Akhir sekali, kandungan mesej adalah pilihan. Badan mesej mungkin mengandungi output pertanyaan, data pertanyaan atau fail.

Dalam bahagian di atas, kita telah melihat bagaimana rupa pengepala respons.

Pelayan web mengembalikan beberapa kod HTTP dan mesej masing-masing kepada pelanggan. Kod status HTTP ini dan mesejnya diterangkan dalam bahagian berikut.

Kod Mesej
100teruskan
101Menukar Protokol
200okey
201Dicipta
202Diterima
203Maklumat Tidak Berwibawa
204Tiada isi kandungan
205Tetapkan Semula Kandungan
206Kandungan Separa
300Pelbagai Pilihan
301Bergerak Secara Kekal
302Dijumpai
303Lihat Lain-lain
304Tidak Diubahsuai
305Gunakan Proksi
306Tidak digunakan
307Ubah hala Sementara
400Permintaan buruk
401tanpa kebenaran
402pembayaran diperlukan
403Dilarang
404Tidak ditemui
405Kaedah Tidak Dibenarkan
406Tidak boleh diterima
407Pengesahan Proksi Diperlukan
408Permintaan tamat masa
409Konflik
410hilang
411Panjang Diperlukan
412Prasyarat Gagal
413Minta Entiti Terlalu Besar
414Permintaan-url Terlalu Panjang
415Jenis Media Tidak Disokong
417Jangkaan Gagal
500Ralat Pelayan Dalaman
501Tidak dilaksanakan
502Gerbang Buruk
503Perkhidmatan Tidak Tersedia
504Gerbang Tamat Masa
505Versi HTTP Tidak Disokong

Tiga kaedah berbeza digunakan untuk menetapkan kod status HTTP seperti yang diberikan di bawah:

    public void setStatus(int statusCode): Ia menetapkan kod status, yang menggunakan nilai integer untuk kod status sebagai hujah.public void sendRedirect(String url): Fungsi ini mencipta respons yang mempunyai kod 302. Ia juga menjana pengepala Lokasi, yang menentukan URL dokumen baharu.public void sendError(int code, String message): Fungsi ini menghantar kod status HTTP 404 ke penyemak imbas dengan mesej ringkas.

Kita akan melihat satu contoh mudah, yang akan memaparkan kod status ralat 407 kepada pelanggan.

Contoh:

|_+_|

Kod di atas akan memaparkan Kod Status HTTP 407 dengan Perlu Pengesahan mesej.

Pemprosesan Borang dalam JSP

Banyak kali, kita perlu menghantar data dari pelayar ke pelayan web dan akhirnya ke program. Terdapat dua kaedah, GET dan POST yang digunakan oleh pelayar untuk menghantar data ini ke pelayan web. Empat kaedah digunakan untuk membaca data menggunakan JSP, getParameter() , getParameterValues() , getParameterNames() , dan getInputStream() .

Kaedah GET

Kaedah GET digunakan untuk menghantar maklumat pengguna yang dikodkan dan melampirkannya pada permintaan halaman. Maklumat pengguna yang dikodkan dan permintaan halaman dipisahkan oleh simbol ‘?’. Kaedah ini adalah lalai untuk menghantar maklumat pengguna ke pelayan web daripada penyemak imbas. Ia mengembalikan String yang akan hadir dalam Lokasi:kotak daripada Pelayar. Jika anda mempunyai data sulit, seperti kata laluan, jangan gunakan kaedah GET.

Contoh kaedah GET menggunakan URL

Mari kita cipta URL yang akan menghantar dua nilai berbeza kepada program GetURLForm menggunakan kaedah GET.

|_+_|

Kami akan menulis kod di bawah dalam fail main.jsp. Kami telah menggunakan kaedah getParameter() untuk membaca data menggunakan JSP.

Contoh:

|_+_|

Pengeluaran:

|_+_|

Pengendalian Kuki

Apakah cookies? Kuki ialah fail teks yang terdapat dalam desktop pelanggan dan digunakan untuk tujuan penjejakan. Kuki HTTP disokong oleh JSP. Di sini, kita akan melihat anatomi kuki HTTP, cara menetapkan atau menetapkan semula kuki, dan kaedah dalam kuki.

Anatomi Kuki

Kuki sentiasa ada pada pengepala HTTP. Apabila JSP menetapkan kuki dalam pengepala HTTP, ia mempunyai struktur berikut.

|_+_|

Di dalam Pengepala Set-Cookie di atas, anda boleh memerhatikan nilai nama sepasang, Tarikh dalam GMT, a laluan , dan juga domain . Pasangan nilai nama ini terdapat dalam format URL. Satu lagi elemen dalam kuki di atas ialah tamat tempoh , yang memberitahu pelayar untuk melupakan kuki ini selepas tarikh dan masa yang ditentukan.

Kaedah Kuki

Berikut ialah beberapa kaedah penting yang berkaitan dengan Kuki, bersama dengan penerangannya.

    awam String getDomain(): Fungsi ini mendapatkan semula domain kuki.public void setDomain(Corak rentetan): Anda boleh menetapkan domain untuk kuki anda menggunakan fungsi ini.public int getMaxAge(): Ia mengambil umur maksimum kuki. Umur diwakili dalam beberapa saat.public void setMaxAge(int tamat tempoh): Fungsi ini akan menetapkan tempoh masa untuk berlalu sebelum kuki tamat tempoh.awam String getValue(): Ia mendapatkan semula nilai kuki.awam String getName(): Ia mengambil nama kuki. Anda tidak boleh menukar nama kuki selepas penciptaannya.public void setValue(String newValue): Fungsi ini membetulkan nilai kuki.awam String getPath(): Ia menghasilkan laluan yang dikaitkan dengan kuki.public void setPath(String uri): Fungsi ini menetapkan laluan untuk kuki.awam String getComment(): Ia menghasilkan ulasan, yang menyatakan tujuan atau penggunaan kuki. Jika kuki tidak mempunyai ulasan, ia mengembalikan NULL.public void setSecure(bendera boolean): Ia menentukan nilai boolean yang menentukan sama ada untuk menghantar kuki melalui sambungan yang disulitkan.public void setComment(String purpose): Fungsi ini menetapkan ulasan untuk kuki yang menyatakan tujuannya.

Bagaimana untuk menetapkan Kuki?

Terdapat tiga kaedah mudah untuk menetapkan kuki. Kaedah-kaedah ini dijelaskan di bawah:

  1. Pertama, buat objek kuki. Panggil pembina kuki dengan nama kuki dan nilai yang sepadan. Kedua-dua nama dan nilai diwakili dalam String.
|_+_|

Semasa membuat kuki, anda mesti ingat bahawa tidak sepatutnya terdapat sebarang ruang kosong atau simbol khas dalam nama dan nilai.

  1. Selepas mencipta kuki, kami kini akan menetapkan umur maksimum untuknya menggunakan kuki setMaxAge fungsi.
|_+_|

Fungsi di atas menetapkan umur kuki maksimum 24 jam.

  1. Akhir sekali, gunakan response.addCookie untuk menambahkan kuki ke dalam pengepala respons HTTP.
|_+_|

Kesimpulan

JavaServer Pages atau Jakarta Server Pages (JSP) ialah teknologi yang membolehkan pembangun mencipta kandungan dinamik atau halaman web. Terdapat pelbagai kelebihan lanjutan JSP, kerana ia mudah diselenggara, memerlukan kod kurang daripada servlet, dan menawarkan pembangunan pantas. Artikel ini ialah panduan ringkas untuk mempelajari JSP untuk pengguna baru.

Kami telah merangkumi semua aspek JSP yang diperlukan untuk dipelajari oleh pembangun pemula. Sebelum memulakan sebarang program JSP, mula-mula sediakan persekitaran Java dan laluan kelas Tomcat. Berikut ialah tutorial lengkap tentang semua elemen JSP yang penting.

Kami mempunyai a Panduan ringkas Teori Graf yang membicarakan semua butiran berkaitan Teori Graf secara terperinci.