Výukový program Struts 2 - komplexné riešenie pre začiatočníkov



Tento článok o výučbe Struts 2 vám pomôže pri začatí používania rámca Struts 2 pre vývoj webových aplikácií J2EE spolu s ukážkou kódu.

Ak hľadáte a ktoré vám môžu pomôcť pri rýchlom a efektívnom vývoji webových aplikácií JEE, potom je Struts 2 dokonalým riešením pre vás. Struts 2 je open-source framework, ktorý sa na trhu veľmi využíva. Prostredníctvom tohto výučbového programu Struts 2 vám pomôžem začať s praktickými implementáciami.

Ďalej uvádzam témy, ktorým sa budem v tomto tutoriále Struts venovať:





Čo je to Struts?

Laicky povedané, Struts je a založený na otvorenom rámci, ktorý pomáha pri vývoji webových aplikácií v J2EE. Torozširuje a propaguje model, pohľad, ovládač ( MVC ) architektúra.Vďaka tomu sú webové aplikácie vyvíjané v štandardných technológiách, ako jeJSP, JavaBeans a XML, udržiavateľnejšie, rozšíriteľnejšie a flexibilnejšie.

Rámec Struts bol pôvodne vyvinutý Craigom McClanahanom a bol odovzdaný nadácii Apache Foundation v máji 2000. Postupne zachytáva pozíciu špičkového projektu Apache v roku 2005 a neskôr vo februári 2007 ho nahradil Vzpery 2 .



Rámec Struts bol vo veľkej miere založený na MVC (Ovládač zobrazenia modelu) paradigma dizajnu. Jeho hlavným cieľom bolo oddeliť model od zobrazenia a radiča v aplikácii s cieľom znížiť závislosť a podporiť oddelenie obáv (SoC). Inými slovami, pomohlo to pri oddelení aplikačnej logiky, ktorá komunikuje hlavne s databázouz prostredníctvom ktorého používateľ interaguje s aplikáciou a inštanciou, ktorá pomáha pri smerovaní informácií medzi modelom a zobrazením.

Vlastnosti Struts 2

  1. Formy a činnosti založené na POJO :S akčnými triedami v Struts sa zaobchádza ako s ovládačom v aplikácii. Sú zodpovední za reakciu na akciu používateľa, vykonanie obchodnej logiky a vrátenie výsledku s pohľadom, ktorý je potrebné vykresliť. Funguje rovnako ako trieda modelu.
  2. Vylepšené značky a prispôsobenie: V aplikácii Struts 2 boli zavedené rôzne typy značiek, ako napríklad značky používateľského rozhrania, kontrolné značky, dátové značky atď., Ktoré pomáhajú pri vývoji aplikácií.
  3. Funkčnosť AJAX: Struts 2 podporuje technológiu ajax, ktorá sa zvyčajne používa na generovanie asynchrónnej požiadavky. Zvyšuje výkonnosť aplikácie tým, že na server odosiela iba požadované údaje z poľa.
  4. Ľahká integrácia: Poskytuje ľahkú integráciu s inými webovými rámcami, ako sú , DWR, SiteMesh a Tiles.
  5. Minimálne konfigurácie: Pri používaní aplikácie Struts 2 nie sú potrebné žiadne konfigurácie réžie. Funguje s minimálnymi konfiguráciami, kde väčšina nastavení berie predvolené hodnoty, pokiaľ nedôjde k odchýlkam.
  6. Integrujte technológie zobrazenia: So Struts2 sa môžete ľahko integrovať s rôznymi zobrazovacími technológiami, ako sú XSLT, JSP, Freemarker, velocity atď.
  7. Téma a šablóny: Struts 2 poskytuje podporu pre 3 typy tém:
    1. Xhtml
    2. Jednoduché
    3. Css_xhtml

Tu je XHTML predvolenou témou pre Struts 2 a používa sa hlavne na spoločný vzhľad.

Teraz, keď viete, čo je to Struts a jeho rôzne funkcie, poďme teraz napredovať v tomto článku výučby o Struts a dozvedieť sa viac o jeho architektúre.



Architektúra

Architektúra Struts - Výukový program Struts 2 - EdurekaAko môžete vidieť na vyššie uvedenom diagrame, spoločnosť Struts používa vyššiu úroveň Architektúra MVC . Tu sa filter implementácie servletu Struts2 používa na implementáciu radiča, zatiaľ čo akcie sa používajú na implementáciu modelu a pohľad sa implementuje kombináciou typov výsledkov a výsledkov. V tejto architektúre je spoločné vlákno, prepájanie a integrácia s ostatnými komponentmi umožnené zásobníkom hodnôt a OGNL. Okrem toho konfigurácie webových aplikácií spolu s akciami, zachytávačmi, výsledkami atď. Pomáhajú tiež pri smerovaní mnohých informácií.

Teraz mi dovoľte vysvetliť kompletný pracovný tok počas životného cyklu požiadavky generovanej používateľom. Ďalej uvádzam krok za krokom pracovný tok, aby ste lepšie pochopili, ako Struts funguje:

  • Začína sa to požiadavkou používateľa, ktorá sa odošle na server s požiadavkou na nejaký prostriedok.
  • Táto požiadavka je potom spracovaná dispečerom filtra na určenie príslušnej akcie.
  • Ďalej sa na požiadavku aplikujú správne nakonfigurované funkcie zachytávača, ako napríklad overenie, nahranie súboru atď.
  • Len čo sa o vybranej akcii rozhodne a vykoná sa na základe požadovanej operácie.
  • V prípade, že sa vyžaduje ďalšie spracovanie, nakonfigurované zachytávače.
  • Výsledok nakoniec poskytne pohľad a vráti sa používateľovi.

Dúfam, že to vymaže pracovný tok v rámci aplikácie Struts. V nasledujúcej časti tejto príručky Struts 2 sa teraz dozviete, čo všetko potrebujete vo svojom systéme, aby ste mohli začať so Struts.

Nastavenie prostredia

Ďalej uvádzam základné potreby, ako začať so Struts 2:

  • Java
    Ak vo svojom systéme nemáte nainštalovanú technológiu Java, môžete si prečítať Inštalácia Java článok.
  • Tomcat
    Ak vo svojom systéme nemáte Tomcat, môžete navštíviť tu na stiahnutie zadarmo.
  • IDE (najlepšie Eclipse)
    Nakoniec potrebujete svoju Zatmenie IDE pre vývoj aplikácií.

Po dokončení ste pripravení namočiť si nohy pomocou Struts. V ďalšej časti tohto kurzu Struts 2 vám poskytnem krátke vysvetlenie základných konceptov Struts 2.

Základné koncepty

1. Konfigurácie

V ľubovoľnej aplikácii Struts existujú dva hlavné konfiguračné súbory:

  1. súbor struts.xml: Tento súbor obsahuje informácie týkajúce sakonfigurácia, ktoré sú upravené ako akcie. Používa sa hlavne na prepísanie predvolených nastavení v aplikácii. Tento súbor sa všeobecne vytvára v adresári WEB-INF / classes v ľubovoľnom projekte Struts.
  2. súbor struts.properties: Tento súbor poskytuje mechanizmus, ktorý môže zmeniť správanie rámca. Keďže aframework využíva množstvo vlastností, ktoré môžete podľa svojej požiadavky zmeniť.

2. Akcie

Akcie alebo triedy akcií sú základnými konceptmi v akejkoľvek aplikácii Struts 2, pretože pôsobia ako ovládač vo vzore MVC. Inými slovami, triedy Action obsahujú obchodnú logiku, ktorá pomáha pri spracovaní údajov. Okrem toho je zodpovedná aj akčná triedareagovanie na požiadavku používateľov, vykonávanie obchodnej logiky. Pomáha tiež rámci pri určovaní a vracaní výsledku na základe konfiguračného súboru (struts.xml) späť používateľovi na vykreslenie stránky Zobraziť.

Triedy akcií Stuts2 nie sú svojou povahou jednotné, tzn. S každou požiadavkou bude vytvorený jeden inštancia tejto triedy. Nemusia teda byť bezpečné pre vlákna a sú jednoduché a nezávislé. Vďaka tomu je testovanie týchto tried oveľa jednoduchšie.

Súbor akcií je možné vytvoriť tromi spôsobmi, a to nasledovne:

  • Jednoduchá trieda akcií
    Ako triedu akcií Struts 2 možno použiť ktorúkoľvek konkrétnu triedu java, jedinou požiadavkou však je, aby trieda musela obsahovať metódu execute () s návratovým typom String. Nižšie je uvedený kód na vytvorenie jednoduchej triedy akcií:
balíček com.edureka.struts2.action verejná trieda DemoAction {public String execute () {návrat 'Vitajte!' }}
  • Implementácia rozhrania Action
    Triedu Struts 2 Action je možné vytvoriť aj implementáciou rozhrania com.opensymphony.xwork2.Action. Obsahuje jednu metódu, tj. Execute (), ktorú musí implementovať implementujúca trieda. Implementáciou tohto rozhrania môžete využiť niekoľko konštánt, ako napríklad SUCCESS, ERROR, NONE, INPUT a LOGIN, ktoré je možné použiť pre stránky s výsledkami.
    Nižšie uvedený kód zobrazuje príklad toho istého:
balíček com.edureka.struts2.action import com.opensymphony.xwork2.Action verejná trieda DemoAction implementuje akciu {public String execute () {návrat ÚSPECH}}
  • Rozšírenie triedy ActionSupport

Triedy akcií v aplikácii Struts 2 všeobecne rozširujú triedu Action Support, ktorá je predvolenou implementáciou rozhrania Action. Poskytuje rôzne nevyhnutné funkcie pre vývoj webových aplikácií, ako napríklad overovanie údajov, správa na úrovni akcie, chybové hlásenie na úrovni akcie, chybové hlásenie na úrovni poľa a načítaný zdroj atď.

Nižšie je uvedená implementácia:

balíček com.edureka.struts2.action import com.opensymphony.xwork2.ActionSupport verejná trieda DemoAction rozširuje ActionSupport {@Override public String execute () vyvolá výnimku {návrat ÚSPECH}}

3. Interceptory

Interceptor je jedným z hlavných pilierov rámca Struts 2. Nie je to nič iné ako predmetktorá je vyvolaná počas predspracovania a následného spracovania požiadavky.Pomáha pri kontrole a udržiavaní plynulého prechodu cyklu požiadaviek a odpovedí.

Hlavnou výhodou použitia zachytávačov je to, že je pripojiteľný. Mám na mysli to, že ak už nemáte konkrétny problém ako napríkladoverenie, spracovanie výnimiek, protokolovanie atď., môžete ho ľahko odstrániť z aplikácie bez nutnosti opätovného nasadenia. Všetko, čo musíte urobiť, je odstrániť záznam zo súboru struts.xml.

Rámec Struts2 poskytuje komplexnú sadu preddefinovaných zachytávačov a bežných zásobníkov zachytávačov, ktoré som uviedol v nasledujúcej tabuľke:

Stíhačka Popis
alias To umožňuje parametrom mať rôzne aliasy mien v požiadavkách používateľov
začiarkavacie políčko To pomáha pri správe začiarkavacích políčok pridaním hodnoty parametra false pre začiarkavacie políčka
conversionError Toto umiestni informácie o chybe z prevodu reťazcov na typy parametrov medzi chyby poľa akcie
createSession Týmto sa implicitne vytvorí relácia HTTP pre prípad, že neexistuje
ladenie Toto poskytuje vývojárovi rôzne ladiace obrazovky
execAndWait To prevedie používateľa na sprostredkujúcu čakaciu stránku, keď sa akcia vykonáva na pozadí
výnimkou To mapuje výnimky, ktoré sú vyvolané z akcie na výsledok
nahranie súboru To umožňuje ľahké nahrávanie súborov v aplikácii Struts 2
i18n To pomáha sledovať zadané miestne nastavenie počas relácie používateľa
guľatiny Toto poskytuje užívateľovi jednoduché protokolovanie generovaním výstupu ako názvu akcie, ktorá sa vykonáva
params To pomáha pri nastavovaní parametrov požiadavky na akciu
pripraviť Používa sa na vykonávanie predbežného spracovania
profil To umožňuje jednoduché profilovanie informácií pre akcie protokolovania.
rozsah Toto ukladá a načítava stav akcie počas relácie používateľa alebo rozsahu aplikácie
ServletConfig Toto poskytuje povolenie akcii na prístup k rôznym informáciám založeným na servlete
časovač Toto poskytuje jednoduché informácie o profilovaní
token To pomáha pri kontrole akcie, či neobsahuje platný token, aby sa zabránilo duplicitnému odoslaniu formulára
validácia Toto poskytuje podporu overenia platnosti pre rôzne akcie

4. Zásobník hodnôt

ValueStackv Struts2 je úložná oblasť, kde sú uložené údaje celej aplikácie na spracovanie žiadosti. Tieto údaje sú uchovávané v rámciActionContextpredmety, ktoré využívajúThreadLocalna načítanie hodnôt špecifických pre akékoľvek konkrétne vlákno požiadavky klienta.

5. OGNL

OGNL znamená Object-Graph Navigation Language. Je to silný výrazový jazyk podobný JSP a väčšinou sa používa pre jazykodkaz a manipulácia s údajmi nachádzajúcimi sa v ValueStack. Okrem toho tiež pomáha pri prenose a konverzii typu údajov.

Podobne ako JSP, OGNL obsahuje koreňový objekt v kontexte aplikácie. Môžete teda poskytnúť odkaz na predvolený objekt pomocou značkovacej notácie, ktorá je v tomto prípade označená symbolom libry. Rámec Struts 2 implementuje OGNL vytvorením mapy ActionContext. Nižšie uvádzam zoznam komponentov mapy ActionContext:

  • Aplikácia
  • Session
  • Zásobník hodnôt
  • Žiadosť
  • Parametre
  • Atribúty

Týmto prechádzate základmi Struts 2. V nasledujúcej časti tohto článku o Struts 2 môžete priamo skočiť do kódu a implementovať všetko, čo ste sa doteraz naučili.

java rozdiel medzi hodmi a hodmi

Výukový program Struts 2

Tu vytvorím jednoduchú aplikáciu, kde budete musieť zadať svoje meno a aplikácia vás privíta. Nižšie je uvedený screenshot úplnej štruktúry projektu:

Ako vidíte, v tomto projekte vytvoríme 5 súborov, ktoré sú:

  1. HelloWorld.java
  2. index.jsp
  3. vitaj.jsp
  4. web.xml
  5. struts.xml

Poznámka: Pred začatím tohto projektu sa uistite, že už máte vo svojom systéme nainštalovaný Tomcat.

KROK I: V Eclipse choďte na Súbor> Nové> Dynamický webový projekt. Zadajte názov projektu a kliknite na New Runtime.

KROK II: Tu musíte zvoliť verziu Apache Tomcat, ktorú ste si stiahli do systému, a kliknúť na Ďalej.

KROK III: Ďalej kliknite na Prehľadávať a prejdite do adresára, kde boli uložené závislosti Tomcat. Po dokončení kliknite na Dokončiť a pokračujte vo vytváraní projektu.

KROK IV: Teraz pridajme súbory jar Struts, ktoré budú potrebné na úspešné uskutočnenie tohto projektu. Môžete si stiahnuť súbory JAR z adresy tu . Keď budete pripravení na súbory JAR, skopírujte súbory JAR a vložte ich do priečinka WebContent> WEB-INF> lib.

KROK V: Teraz, keď sme pripravení na všetky konfigurácie, umožňuje nastavenie súborov s kódom, počnúc HelloWorld.java. Kliknite pravým tlačidlom myši na projekt> Nové> Trieda. Vyplňte názov balíka a triedy a kliknite na koniec.

KROK VI: Zadajte nižšie uvedený kód do poľa HelloWorld.java spis.

balíček com.edureka verejná trieda HelloWorld {private Názov reťazca public String getName () {návratové meno} public void setName (názov reťazca) {this.name = meno} verejný reťazec execute () {návrat 'úspech'}}

KROK VII: Ďalej vytvorte nový index.jsp súbor pod WebContent a zadajte nasledujúci kód:

 

KROK VIII: Teraz znova vytvorte nový vitaj.jsp súbor pod WebContent a zadajte nasledujúci kód:

Vitajte

KROK IX: Teraz choďte na WebContent> WEB-INF a zadajte nasledujúci kód do web.xml spis.

Struts2Demo index.html struts2 org.apache.struts2.dispatcher.ng.filter.StrutsPrepareandExecuteFilter struts2 / *

KROK X: Nakoniec v sekcii Zdroje Java> src vytvorte struts.xml spis

vitaj.jsp

KROK XI: Teraz choďte na index.jsp stránku a kliknite na ňu pravým tlačidlom myši. Ak chcete spustiť aplikáciu, vyberte možnosť Spustiť na serveri.

Týmto sa dostávame na koniec tohto článku o výučbe Struts 2. Ak sa chcete dozvedieť viac informácií o prostredí Java, môžete sa obrátiť na našu stránku .

Teraz, keď ste pochopili, čo je výučba Struts 2, pozrite sa na autor: Edureka, dôveryhodná online vzdelávacia spoločnosť so sieťou viac ako 250 000 spokojných študentov rozmiestnených po celom svete. Výcvikový a certifikačný kurz Edureka Java J2EE a SOA je určený pre študentov a profesionálov, ktorí chcú byť vývojármi Java. Kurz je navrhnutý tak, aby vám dal náskok v programovaní v Jave a naučil vás základné aj pokročilé koncepty Javy spolu s rôznymi rámcami Java, ako je Hibernate & Spring.

Máte na nás otázku? Uveďte to prosím v sekcii komentárov v tomto článku „Výukový program Struts 2“ a my sa vám ozveme čo najskôr.