Úvod do životného cyklu JSP
V tomto článku sa budeme venovať životnému cyklu JSP. Stránky servera Java, technológia na strane servera, ktorá preberá zodpovednosť za spracovanie na serveri.
1. Kde potrebujeme JSP?
- Ak sa chystáte na vývoj webových aplikácií a čo vidíme, je vytváranie dynamických webových stránok, potom zohrávajú JSP dôležitú úlohu, pretože vykresľovanie sa vykonáva dynamicky.
- JSP fungujú iba na podkladovom HTML, telo stránky je tvorené iba základnými značkami HTML, ale existujú určité zástupné symboly, parametre, hodnoty zoznamu, iterátory, ktoré sú možné iba s JSP, HTML vám poskytuje statické zobrazenie iba pri akýchkoľvek rozlíšeniach, ktoré je potrebné urobiť v čase vykonávania vyžaduje dynamické spracovanie, takže sa tam JSP javia ako riešenie.
- JSP umožňuje oddelenie tvorby obsahu a prezentácie obsahu
Pozrime sa na základný príklad, ktorý vám dá predstavu o tomto dynamickom vykreslení.
Obsah alebo logika vo vnútri sa vykresľujú dynamicky a odovzdávajú sa iba back-end.
Teraz sa pohnime dopredu a porozumieme životnému cyklu JSP a ako sa vlastne dostanú na front-end, aby poskytovali zákazníkovi čitateľný alebo pripravený zážitok.
2. Životný cyklus JSP:
Existujú určité fázy, v ktorých je tento cyklus rozdelený, definovaný takto:
- Fáza prekladu - konverzia súboru JSP na súbor servletov.
- Fáza kompilácie - kde sa súbor servletov prevedie na triedu servletov.
- Trieda zaťaženia
- Okamžitie objektu servletu
- Inicializácia kontajnerových volaní servletov jspInit ()
- Kontajner servletu zavolá službu _jspService () na spracovanie žiadosti
- Vyčistite JSP, kontajner servletov bude volať metódu jspDestroy ().
Teraz vám umožníme spracovať vyššie uvedené kroky, aby ste získali jasnejší obraz -
Krok 1
Vo fáze prekladu prekladá kontajner servlet JSP na servlet, takže kódovanie založené na značkách získava rovnocennú formu v jave, takže to Java Virtual Machine (JVM) dokáže porozumieť (pretože nerozumie jazyku značiek), Tento preklad vykonáva server buď v čase nasadenia webovej aplikácie, alebo keď JSP dostane prvú žiadosť o vykonanie.
Krok 2
Teraz nastal čas na kompiláciu zdrojového kódu, tj prevedenie servletového kódu na java bajtový kód (java bajtový kód je inštrukčná sada pre java virtuálny stroj).
Krok 3
Trieda servletov, ktorá bola načítaná zo zdroja JSP, sa teraz načíta do kontajnera.
Krok 4
Po načítaní súboru triedy webovým kontajnerom kontajner JSP teraz používa konštruktor bez argumentov na vytvorenie inštancie triedy servletov. Teraz, keď kontajner inicializuje objekty vyvolaním metódy jsplnit ().
Public void jsplnit()
(
// servlet initialization related snipped to be placed here
)
Krok 5
Teraz nastal čas na spracovanie požiadaviek, tu sa inicializované objekty servletov ekvivalentné JSP používajú na spracovanie požiadaviek klientov. Metóda _jspService () je vyvolaná webovým kontajnerom. Toto vyvolanie sa vykoná pre jeden objekt servletu odovzdávajúci objekt HTTPServletRequest a objekt HTTPServletResponse pre príslušné požiadavky a odpovede. Všimnite si, že neexistuje žiadne ustanovenie na prepísanie metódy _jspService ().
Public void _jspService( HttpServletRequest request, HttpServletResponse response)
(
//snipped is placed here
)
Krok 6
Posledný krok sa nazýva vyčistenie JSP, JSP sa musí z používania kontajnera odstrániť a metóda jspDestroy () sa používa na to isté, táto metóda sa vyvolá iba raz. Existuje ustanovenie na prepísanie tejto metódy, a to je možné v prípadoch, keď chceme vykonať našu vlastnú akciu, ako je uvoľnenie pripojenia pre databázu atď.
public void jspDestory()
(
// snippet is placed here
)
Príklad:
Vytvorme prihlasovací formulár pre našu vzorovú aplikáciu a na vykreslenie určitého obsahu tu použijeme JSP.
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
My Login Form
<%
Date d = new Date();
System.out.println("Current Date= "+d);
%>
UserName
Password
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" | <%@ page language="java" contentType="text/html; charset=ISO-8859-1" |
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
My Login Form
<%
Date d = new Date();
System.out.println("Current Date= "+d);
%>
UserName
Password
Vo vyššie uvedenom príklade je kód umiestnený vo vnútri vykreslený dynamicky, ako sme už predtým spomenuli. Teraz, keď je táto požiadavka odoslaná, bude prijatý akčným radičom, čo je v podstate trieda Java, ktorá obsahuje parametre zodpovedajúce menám uvedeným v Súbor JSP.
Kontajner servletov vytvára modálny objekt a obsah sa dá spomenúť v iných JSP odkazom na tento konkrétny radič.
Tento druh prístupu založeného na MVC v súčasnosti nájde miesto s technológiami ako -
- Jarná MVC
- Vzpery 2
- servlety
Jarné MVC a Struts 2 zaviedli svoje špecifické URI, aby používali JSP prispôsobeným spôsobom, a tiež zavádzajú rôzne variácie značiek, ako je napríklad automatické dopĺňanie, iterátor, zoznam atď.
Preto JSP nájde ideálne miesto v mnohých rámcoch kvôli svojej flexibilite.
záver
- Preto sme sa dozvedeli, že dynamické webové stránky sa vykresľujú prostredníctvom rozhrania JSP, zatiaľ čo statické stránky sa dajú priamo vložiť do HTML iba preto, že odteraz nepotrebujú žiadne manipulácie s údajmi / obsahom.
- Moderné technológie sú kompatibilné s JSP a používajú ich vzpery a pružinové rámce, ktoré nachádzajú miesto vo veľkých aplikáciách týkajúcich sa bankovníctva, SCM, maloobchodných predajní atď.
- Kompatibilný s AJAX vyžaduje dynamické vykresľovanie.
- Aplikácia nemôže byť typu jednej stránky, pretože zakaždým, keď je potrebné načítať stránku z koncového zariadenia, nemôže byť.
- Dlaždice je možné použiť pre základné formáty rozloženia vo vzperách a na jar a to, čo musíme znova a znova vykresliť, je iba telo.
- Nakoniec sa kódy na prednom konci prevedú na ekvivalent HTML.
- JSP odlišujú koncepciu prezentácie obsahu a generovania obsahu.
- Interceptory sú poskytované rôznymi rámcami, ktoré vývojárom uľahčujú život, napríklad nástroje vo vzperách sú poskytované pre procesy nahrávania súborov atď.
Odporúčané články
Bol to sprievodca životným cyklom JSP. Tu sme diskutovali o úvode, krokoch a príklade životného cyklu JSP. Viac informácií nájdete aj v ďalších navrhovaných článkoch -
- JSP vs ASP
- AJAX Interview Otázky
- Čo je to MVC?
- JSP vs Servlet
- Iterátory v C #