|
9-15-laboratoriya ishi
|
bet | 6/7 | Sana | 23.05.2024 | Hajmi | 2,73 Mb. | | #251584 |
14-LABORATORIYA ISHI
Mavzu: Serverlarda servletlarni yaratish
Ishning maqsadi:
Talabalarda Java dasturlash tilining javax.servlet.*, javax.servlet.http.* va java.io.* paketlari klasslaridan foydalanib servletlar yaratish bo‘yicha ko‘nikmalar shakllantirish.
Nazariy qism:
Servlet - bu veb-serverda ishlaydigan Javada yozilgan dastur. U amalga oshiriladi mijozning (ya’ni, brauzerning) HTTP so‘roviga javob berish va server tomonidan mijozga qaytariladigan hujjatni (odatda HTML hujjatini) yaratadi. Servlet veb-ilovasining server tomonida ishlaydigan java dastur hisoblanadi. Appletlar veb-brauzerning funksiyalarini dinamik ravishda kengaytirganidek, servletlar veb-serverning funksiyasini dinamik ravishda kengaytiradi. Servletning amaliyoti quyidagicha ta’riflanishi mumkin: mijoz so‘rov yuborilganda, maxsus konfiguratsiya faylini ishlatib, veb-server amalga oshirilishi kerak bo‘lgan servletni aniqlashi mumkin. Shundan so‘ng, veb-server JVM-ni ishga tushiradi, bu esa servletni bajaradi. Servlet so‘rovni bajaradi va tarkibni veb-serverga (ehtimol HTML-sahifa sifatida) o‘tkazadi. Veb-server mijozga (servlet yaratilgan HTML-sahifaga) javob yuboradi. WEB server asosan servletlarni yuklaydigan, ularni bajaradigan konteyner hisoblanadi va ulardan natijalarni olgan mijozga yuboradi. Uning kuchi va moslashuvchanligi tufayli servletlar tizimi arxitekturasida muhim rol o‘ynashi mumkin. Ular o‘rta daraja uchun mo‘ljallangan dastur vazifalarni bajarish mumkin, mijoz uchun proksiserver sifatida harakat, va hatto yangi protokollar va boshqa vazifalar uchun qo‘llab-quvvatlash qo‘shib, o‘rta daraja funksiyalarini rivojlantirish. Qidiruv qatlam uch bosqichli mijoz-server tizimida dastur server sifatida xizmat qiladi va veb-brauzer kabi "engil" dastur bilan ma’lumotlar manbai o‘rtasida joylashgan.
Servlet proksi server sifatida. Dasturlarni qo‘llab-quvvatlash uchun servletlar proksi serverlari sifatida harakat qilishlari mumkin. Bu muhim bo‘lishi mumkin, chunki Java xavfsizligi tizimi applets faqatgina yuklab olingan serverga ulanish imkonini beradi. Applet boshqa mashinada joylashgan ma’lumotlar bazasi serveriga ulanish kerak bo‘lsa, servlet bu ilovani yaratishi mumkin.
Vaqtincha va doimiy servlet. Servletlarni har bir mijoz so‘rovi uchun boshlash va to‘xtatish mumkin. Bundan tashqari, ular veb-serverning boshida ishga tushishi va to‘xtab turmasidan oldin mavjud bo‘lishi mumkin. Vaqtinchalik servletlar talabga binoan yuklanadi va kamdan-kam ishlatiladigan funktsiyalar uchun server resurslarini tejash uchun yaxshi usul. Turg‘un serverlar veb-serverning boshida o‘rnatiladi va to‘xtab qolguncha mavjud bo‘ladi. Servletlar, agar ular server tomonida doimiy faoliyatni taklif qilsa (masalan, RMI xizmati) yoki ular zarur bo‘lgan holatlarda ularni ishga tushirish qiymati juda baland bo‘lsa (masalan, ma’lumotlar bazasiga ulanish) serverga doimiy uzatmalar sifatida o‘rnatiladi Mijozlar so‘rovlariga imkon qadar tez javob bering. Servletni sobit yoki vaqtinchalik topshirishga maxsus kod yo‘q; Bu veb-server konfiguratsiya funktsiyasi.
Servlet hayot sikli, javax.servlet.Servlet. Servletlar veb-server platfromasida veb-serverning o‘zi bilan bir xil jarayonning bir qismi sifatida olib boriladi. Veb-server har bir servlet misoli ishga tushirish, chaqirish va yo‘q qilish uchun javobgardir. Veb-server server bilan oddiy interfeys orqali o‘zaro aloqa qiladi: javax.servlet.Servlet. Javax.servlet.Servlet interfeysi uch asosiy usulni o‘z ichiga oladi:
- init();
- service();
- destroy();
- getServletConfig();
- getServletInfo().
Servlet interfeyslari va Java ilovalari o‘rtasidagi o‘xshashlik aniq. Aynan shu tarzda ishlab chiqilgan. Java serverlari veb-brauzerlar uchun veb-brauzerlar uchun bir xil ilovalar bilan bir xil. Ilova veb-brauzerida amalga oshiriladi va maxsus interfeys orqali uning talabiga binoan amallar bajariladi. Servlet bir xil veb-serverda ishlaydi.
ServletRequest interfeysi. ServletRequest, HTTP so‘rov parametrlari haqida mijoz ma’lumotlarini servletga beradi, ya’ni. parametr nomi va qiymatlar, atributlar va kirish oqimi kabi ma’lumotlarni taqdim etadi. Ushbu ma’lumot service () uslubiga o‘tkaziladi. Quyidagi servlet misoli, service () metodining spam parametrlaridan ma’lumotlarni qanday qilib olish mumkinligini ko‘rsatib beradi:
BufferedReader reader;
String param1;
String param2;
public void service(ServletRequest request, ServletResponse response)
{
reader = request.getReader();
param1 = request.getParameter("First");
param2 = request.getParameter("Second");
}
|
| |