Úvod do životného cyklu JSF

1. Na strane servera:

Kód, ktorý píšete v aplikácii JavaServer Faces (JSF), sa spúšťa na serveri, ale komponenty môžu obsahovať aj kód JavaScript, ktorý beží na klientovi. Môžete to porovnať s rámcami na strane klienta, ako je Angular, kde píšete kód v jazyku JavaScript alebo strojopis, ktorý sa spúšťa na strane klienta vo webovom prehliadači.

Skutočnosť, že ide o rámec na strane servera, neznamená, že v aplikácii JSF nemôžete použiť kód na strane klienta. Komponenty JSF môžu v skutočnosti obsahovať podporu JavaScriptu a JSF pre AJAX, pre komunikáciu, tímový kód na strane klienta a serverový kód.

2. Na základe komponentov:

Webové aplikácie JavaServer Faces sú zostavené z opakovane použiteľných samostatných komponentov ako stavebných blokov, čím sa vytváranie webových aplikácií zrýchľuje a zjednodušuje.

Najzaujímavejším aspektom tvárí JavaServer, ktoré ju odlišujú od rámcov webových aplikácií založených na akciách, ako napríklad Spring Web MVC (Model-View-Controller), Struts alebo plain Servlets na stránkach JavaServer, je to, že je založený na komponentách. To znamená, že v JSF sú stavebné bloky vašej aplikácie opakovane použiteľné a samostatné komponenty.

Komponent môže byť akákoľvek súčasť webovej aplikácie. Môže to byť rovnako jednoduché ako štandardné HTML riadenie formulárov, ako je napríklad pole na zadávanie textu alebo tlačidlo alebo ako zložitá tabuľka s podporou triedenia a stránkovania.

Napríklad:

Kalendár alebo graf alebo akákoľvek iná časť webovej aplikácie, o ktorej si môžete myslieť, že rámec, spravuje komponenty na stránke a stará sa o veľa vecí, ako napríklad prevzatie údajov od používateľov z polí formulára, overenie a konverzia údajov a ich uloženie. do modelových objektov a vyvolávanie akcií.

JSF prichádza s množstvom štandardných komponentov a sú k dispozícii aj knižnice s mnohými komponentmi pripravenými na použitie.

3. Rámec webového používateľského rozhrania

JavaServer Faces je zameraný na časť používateľského rozhrania webových aplikácií - stránky definujete v jazyku definície zobrazenia Facelets.

Jazyk štandardnej definície zobrazenia používaný v JSF sa nazýva Facelets.

Rôzne pravidelné fázy životného cyklu JSF

Vo vnútri životného cyklu JSF je šesť rôznych pravidelných fáz. Vyššie uvedený diagram ukazuje typické poradie, v ktorom prebieha šesť fáz.

1. Obnoviť fázu zobrazenia

Táto fáza začína zakaždým, keď spotrebiteľ požiada o stránku JSF jednoduchým kliknutím na odkaz, tlačidlo atď. V tomto generovaní zobrazenia stránky sa vykoná väzba komponentov na obsluhy udalostí a validátory a pohľad sa zachová v objekte FacesContext.

2. Použite hodnotu požiadavky

Cieľom tejto fázy je, aby každý komponent získal aktuálny stav

3. Fáza overenia procesu

V tejto fáze budú lokálne hodnoty uložené na získanie komponentu v strome porovnané s validačnými pravidlami autorizovanými na získanie komponentov.

4. Aktualizujte fázu hodnôt modelu

Po overení, či sú údaje platné v poslednej fáze, by sa mohli začať miestne hodnoty prvkov súvisiace s vlastnosťami objektu na serveri, napríklad podložkou fazule.

5. Vyvolajte fázu aplikácie

Pred touto fázou boli hodnoty komponentov transformované, overené a umiestnené na objekty fazule, takže ich môžete využiť na vykonanie obchodnej logiky aplikácie.

6. Fáza odozvy na vykreslenie

Táto fáza načíta nové zobrazenie, ak je to potrebné, použitím hodnôt zo serverových bôbov, potom výstup zobrazíme pomocou hodnôt, ktoré sú v strome, a potom pre fazuľa, ktoré nie sú na požiadanie, inými slovami o rozsahu relácie alebo rozsahu aplikácie, budeme potom uložte aktuálny stav.

Pochopenie Faces Flows s ukážkou použitia v reálnom živote

Nižšie je uvedená ukážka použitia tvárových tokov s príkladom:

Proces platby

  • Zadajte podrobnosti o dodaní
  • Meno a adresa
  • Zadajte platobné podrobnosti
  • Názov, typ a číslo kreditnej karty
  • Skontrolujte objednávku
  • Potvrďte alebo zrušte objednávku
  • Platba bola úspešná alebo neúspešná

Na nasledujúcom diagrame nájdete postup platby pomocou uzlov toku.

Tok pozostáva z niekoľkých uzlov. Každý uzol je zaradený do toku, ktorý vykonáva určitú funkciu a určuje, ktorý uzol by sa mal nazývať nasledujúci. V definícii toku definujete uzly a pravidlá pre navigáciu medzi nimi. Na tomto diagrame vidíte uzly toku platieb.

Začína sa zasielaním, potom platbou a kontrolou, potom vykonávacím uzlom, v ktorom je platba vykonaná a objednávka je splnená, a nakoniec skontroluje úspešnosť alebo neúspech výsledku a potom je proces ukončený.

Druhy tokových uzlov v životnom cykle JSF

V životnom cykle JSF existuje päť rôznych druhov uzlov.

Zobraziť uzol

  • Zobraziť zobrazenie (stránka)

Uzol na volanie metódy

  • Zavolajte metódu

Prepínací uzol

  • Vyberte jeden zo série prípadov

Návratový uzol

  • Ukončite tok

Uzol toku hovorov

  • Zavolajte ďalší tok

Toky sú podobné metódam

Nižšie sú uvedené podobné metódy toku v životnom cykle JSF:

Vstupný bod, parametre, výstupné body

  • Môže vrátiť jednu alebo viac hodnôt

Rozsah toku

  • Fazuľa s pomarančovým tokom je ako miestne premenné

Hniezdne hovory

  • Zásobník hovorov

Zásobník hovorov sa používa na sledovanie vyvolávaní a rozsahov tokov presne tak, ako to funguje pri metóde. Keď sa tok nazýva, do zásobníka sa vloží nový záznam a keď sa tok vráti, jeho záznam sa vyskočí zo zásobníka. Konfiguráciu toku možno zadať dvoma spôsobmi.

Konfiguračný súbor XML

  • V tváre-config.xml alebo v samostatnom súbore

V jazyku Java pomocou rozhrania Flow Builder API

  • Metóda výrobcu CDI s anotáciou @FlowDefinition

Záver: JSF Life Cycle

Java Server Faces (JSF) je štandardný koncept na vytváranie webových aplikácií v jazyku Java. Napriek tomu v priebehu vývoja a zavádzania aplikácií JSF existuje množstvo výkonov a konfigurácií, ktoré je potrebné použiť, aby sa aplikácie stali bezpečnejšími, spoľahlivejšími a účinnejšími.

Odporúčané články

Toto bola príručka o životnom cykle JSF. Tu sme diskutovali o šiestich rôznych pravidelných fázach životného cyklu JSF a piatich rôznych druhoch uzlov v životnom cykle JSF. Ďalšie informácie nájdete aj v nasledujúcich článkoch -

  1. JSP vs JSF - najväčšie rozdiely
  2. Java EE vs Jar
  3. Otázky týkajúce sa rozhovoru Java Servlet
  4. Kariéra v Java

Kategórie: