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 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 HTML kód generálása

12 HTML kód generálása

13 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 A HTML űrlap

15 A feldolgozó Servlet

16 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 -ról segéd API.http://www.servlets.com/cos/

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

18 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 A delegáló Servlet

20 A fogadó JSP lap

21 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 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 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 URL-újraírás A session azonosítója, ekkor az URL-ben kerül elküldésre. Pl. 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 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 Szűrő (Filter) készítése

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

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

29 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