Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Java web programozás 6.. 20092 Tartalom Java Servletek –Működése –Minta Servlet –A kérés feldolgozása –HTML kód generálása –HTML űrlapok feldolgozása.

Hasonló előadás


Az előadások a következő témára: "Java web programozás 6.. 20092 Tartalom Java Servletek –Működése –Minta Servlet –A kérés feldolgozása –HTML kód generálása –HTML űrlapok feldolgozása."— Előadás másolata:

1 Java web programozás 6.

2 20092 Tartalom Java Servletek –Működése –Minta Servlet –A kérés feldolgozása –HTML kód generálása –HTML űrlapok feldolgozása –Fájl feltöltése –A kérés delegálása –Munkamenet kezelés –Filter készítése

3 20093 Működés Fogalma –Szerver oldali (web rétegbeli) komponens, amely kérés- válasz alapú feldolgozást végez. –Mindig egy Java web-alkalmazáshoz tartozik. Metódusai –doPost(): A POST-al érkező kérések. –doGet(): A GET-tel érkező kérések. Többszálúság –Ha több kérés érkezik egyszerre, akkor a web-konténer több szálat indít, amelyek a Servlet ugyanazon metódusát hívják meg. (doPost, doGet). –A kód kritikus metódusait lássuk el, a „synchrozized” kulcsszóval.

4 20094 Létrehozás (1)

5 20095 Létrehozás (2)

6 20096 Létrehozás (3)

7 20097 Létrehozás (4)

8 20098 Minta Servlet A Servlet kódja

9 20099 Minta Servlet A telepítés-leíró (web.xml)

10 200910 A kérés feldolgozása HttpServletRequest –Ezen objektum tartalmazza a klienstől jövő adatokat. Metódusok: –String getHeader(String name): A „name” nevezetű fejléc megszerzése. –Enumerations getHeaderNames(): Az összes fejléc elkérése A kérés fejlécek –Host: A kliens gép neve –User-Agent: A böngésző –Accept-Language: A támogatott nyelv –Accept-Charset: A támogatott karakterkészlet

11 200911 HTML kód generálása

12 200912 HTML kód generálása

13 200913 HTML űrlapok feldolgozása Az űrlapok adatai egy gomb („Submit”) megnyomása után továbbítódnak a szerver felé. A HTML FORM „action” attribútumában kell megadni, hogy mely szerver oldali komponenshez kerüljenek a FORM-ban megadott adatok. A „Submit” gomb hatására elküldésre kerülnek az adatok (action attribútum!) A szerver oldalon, a „HttpServletRequest” objektum „getParameter(String name)” metódusával kérjük el a paramétereket. A „name”, a HTML form-ban megadott elem neve.

14 200914 A HTML űrlap

15 200915 A feldolgozó Servlet

16 200916 Fájl feltöltése Egy fájl feltöltő űrlap elem kell a HTML FORM-ba A Servlet-nek fel kell dolgoznia a kapott tartalmat. A http://www.servlets.com/cos/ -ról segéd API.http://www.servlets.com/cos/

17 200917 Fájl feltöltése A Servlet kódja

18 200918 A kérés delegálása A klienstől érkező kérést továbbíthatjuk egy servlet vagy pl. egy JSP lap felé. Az URL, változatlanul továbbítódik a fogadóhoz. A „RequestDispatcher” objektum segítségével, kétféleképpen delegálhatunk: –forward(ServletRequest request, ServletResponse response): A válasz generálása, a fogadó oldal dolga Statikus fájl esetén, annak tartalma belegenerálódik a válaszba –include(ServletRequest request, ServletResponse response) : Más erőforrások tartalmát fűzhetjük bele a válaszba A válasz generálása a küldő oldal dolga

19 200919 A delegáló Servlet

20 200920 A fogadó JSP lap

21 200921 Munkamenet kezelés Munkamenet („session”) –Az ugyanazon klienstől érkezett kérések összessége. Állapotmentesség feloldása –A HTTP protokoll, ún. állapotmentes.  Megoldás: A) Sütik („cookie”) B) URL-újraírás Session kezelése –A „HttpSession” objektum –A „HttpServletRequest” objektum „getSession(boolean create)” metódusával elkérve. –create == true: session létrehozása –create == false: null, ha korábban még nem hoztuk létre.

22 200922 Munkamenet kezelés Session kezelése –setAttribute(String key, Object value): Tetszőleges objektum tárolása, a „key” azonosításával. –getAttribute(String key): eltárolt objektum lekérdezése a „key” alapján. A munkamenet („Session”) lezárása –A): A böngésző bezárásakor –B): Programozott módon: „session.invalidate()” –C): Alapértelmezett lejárati idő: A „web.xml” –ben Munkamenet azonosítása –Minden Session objektumnak van egy ID-ja, ami a „getId()” metódussal, lekérdezhető.

23 200923 Sütik Speciális HTTP fejlécek A kliens oldalon tárolódnak el A sütik a böngészőben letilthatóak A kliensnek, a szerver által küldött azonosítót kell elmentenie, majd a munkamenet elévüléséig innen beolvassa a SESSIONID-t, amelyet elküld a szervernek. Fejlécek: –Set-Cookie: a szerver által generált azonosító –Cookie: a klienstől származó kérésekfejlécében.

24 200924 URL-újraírás A session azonosítója, ekkor az URL-ben kerül elküldésre. Pl. http://host/webapplication/servlet;jsessionid=xyz Ekkor, minden hivatkozáshoz (amelyet a servlet-ünk generál) hozzá kell fűznünk, a session azonosítót. A mai korszerű alkalmazások (JSP, JSF), az objektumok, és adatok SESSION-ben való kezelését, automatikus módon oldják meg. Nekünk csak a SESSION nyitásáról, és lezárásáról kell gondoskodnunk!

25 200925 Szűrő (Filter) készítése Egy szűrő segítségével feldolgozható a klienstől érkező kérés, ill. a válasz. Lényegében a kliens és a szerver közé ékelődő objektum. Nagyon hasonló a Servletekhez. Az osztály, implementálja a „javax.servlet.Filter” interfészt. A tényleges szűrést a „doFilter(ServletRequest request, ServletResponse response, FilterChain chain)” metódus végzi.

26 200926 Szűrő (Filter) készítése

27 200927 Szűrő (Filter) készítése

28 200928 Szűrő (Filter) készítése

29 200929 Szűrő (Filter) regisztrálása


Letölteni ppt "Java web programozás 6.. 20092 Tartalom Java Servletek –Működése –Minta Servlet –A kérés feldolgozása –HTML kód generálása –HTML űrlapok feldolgozása."

Hasonló előadás


Google Hirdetések