Struts 2 juhendaja - ühe peatuse lahendus algajatele

See artikkel Struts 2 juhendaja kohta aitab teil Struts 2 raamistikuga alustamist J2EE veebirakenduste väljatöötamiseks koos koodi tutvustamisega.

Kui otsite a mis aitab teil kiiresti ja tõhusalt JEE veebirakendusi välja töötada, on Struts 2 teie jaoks ideaalne lahendus. Struts 2 on avatud lähtekoodiga raamistik, mida kasutatakse turul palju. Selle Struts 2 õpetuse kaudu aitan teil sellega koos praktiliste rakendustega alustada.

Allpool on toodud teemad, mida selles Strutsi õpetuses arutan:





Mis on tugipostid?

Võhikus on Struts a -põhine avatud lähtekoodiga raamistik, mis aitab J2EE-s veebirakendusi arendada. Seepikendab ning reklaamib mudelit, vaadet, kontrollerit ( MVC ) arhitektuur.See muudab veebirakendused välja töötatud standardsete tehnoloogiate abilJSP, JavaBeans ja XML, hooldatavamad, laiendatavad ja paindlikumad.

Strutsi raamistiku töötas algselt välja Craig McClanahan ja see anti Apache Foundationile üle 2000. aasta mais. Järk-järgult haarab see tipptasemel Apache projekti positsiooni 2005. aastal ja hiljem 2007. aasta veebruaris asendati see Toed 2 .



Strutsi raamistik põhines ulatuslikult MVC-l (Mudel-vaade-kontroller) kujundusparadigma. Selle peamine eesmärk oli mudeli eraldamine vaates ja kontroller rakenduses, et vähendada sõltuvust ja edendada murede eraldamist (SoC). Teisisõnu aitas see eraldada rakenduse loogikat, mis peamiselt suhtleb andmebaasigaalates mille kaudu kasutaja suhtleb rakenduse ja eksemplariga, mis aitab teavet mudeli ja vaate vahel kanaliseerida.

Struts 2 omadused

  1. POJO-põhised vormid ja toimingud :Strutsis olevaid tegevusklasse käsitletakse rakenduses kontrollerina. Nad vastutavad kasutaja toimingutele reageerimise, äriloogika täitmise ja tulemuse tagastamise eest vaates, mis tuleb esitada. See toimib ka mudeliklassina.
  2. Täiustatud sildid ja kohandamine: Struts 2-s on kasutusele võetud erinevat tüüpi silte, nagu kasutajaliidese sildid, kontrollmärgendid, andmesildid jne, mis aitavad rakenduse väljatöötamisel.
  3. AJAXi funktsionaalsus: Struts 2 toetab ajax-tehnoloogiat, mida tavaliselt kasutatakse asünkroonse päringu genereerimiseks. See muudab rakenduse jõudluse paremaks, saates serverisse ainult vajalikud väljaandmed.
  4. Lihtne integreerimine: See võimaldab hõlpsasti integreeruda teiste veebiraamistikega, näiteks , DWR, SiteMesh ja plaadid.
  5. Minimaalsed konfiguratsioonid: Rakenduse Struts 2 kasutamise ajal pole üldkulude konfiguratsioone vaja. See töötab minimaalsete konfiguratsioonidega, kus enamik seadeid võtab vaikeväärtused, kui pole kõrvalekaldeid.
  6. Integreeri vaate tehnoloogiad: Struts2 abil saate hõlpsasti integreeruda erinevate vaatetehnoloogiatega, nagu XSLT, JSP, Freemarker, kiirus jne.
  7. Teema ja mallid: Struts 2 pakub tuge kolme tüüpi teemadele:
    1. Xhtml
    2. Lihtne
    3. Css_xhtml

Siin on XHTML Struts 2 vaiketeema ja seda kasutatakse peamiselt ühise ilme jaoks.

Nüüd, kui teate, mis on tugipostid ja selle erinevad funktsioonid, saate nüüd selle strutside õpetuse artikliga edasi liikuda ja õppida selle arhitektuuri kohta.



Arhitektuur

Struts Arhitektuur - Struts 2 õpetus - EdurekaNagu ülaltoodud skeemilt näha, kasutab Struts kõrgetasemelist MVC arhitektuur . Siin kasutatakse Struts2 dispetšleti servleti filtrit kontrolleri juurutamiseks, mudeli rakendamiseks kasutatakse toiminguid ja vaade rakendatakse tulemuste tüüpide ja tulemuste kombineerimisega. Selles arhitektuuris võimaldavad ühine lõim, linkimine ja integreerimine teiste komponentidega väärtusest koosneva virna ja OGNL-i abil. Lisaks sellele aitavad palju teavet suunata ka veebirakenduste konfiguratsioonid koos toimingute, pealtkuulajate, tulemuste jms.

Lubage mul nüüd selgitada kasutaja loodud päringu olelusringi kogu töövoog. Allpool on toodud samm-sammult töövoog, et paremini mõista, kuidas tugipostid töötavad:

  • See algab kasutaja päringuga, mis saadetakse serverile mõne ressursi taotlemiseks.
  • Seejärel töötleb filtri dispetšer seda taotlust, et määrata sobiv toiming.
  • Seejärel rakendatakse päringule korralikult konfigureeritud pealtkuulaja funktsioone, näiteks valideerimine, failide üleslaadimine jne.
  • Kui valitud toiming on otsustatud ja see täidetakse soovitud toimingu põhjal.
  • Juhul, kui kasutatakse järeltöötlust, on vaja konfigureeritud pealtkuulajaid.
  • Lõpuks annab vaade tulemuse ja tagastatakse kasutajale.

Loodan, et see puhastab rakenduse Struts töövoo. Vaatame nüüd selle Struts 2 õpetuse järgmises jaotises, mida kõike oma süsteemis Strutsiga alustamiseks vajate

Keskkonna seadistamine

Allpool on loetletud põhitarbed Struts 2-ga alustamiseks:

  • Java
    Kui teie süsteemi pole Java installitud, saate viidata Java installimine artikkel.
  • Tomcat
    Kui teie süsteemis pole Tomcati, võite külastada siin tasuta allalaadimiseks.
  • IDE (eelistatavalt Eclipse)
    Lõpuks vajate oma Eclipse IDE rakenduste arendamiseks.

Kui olete valmis, olete valmis jalgadega Strutsiga märjaks tegema. Selle õpetuse järgmises jaotises annan teile lühikese ülevaate tugipostide 2 põhimõistetest.

Põhimõtted

1. Konfiguratsioonid

Igal tugirakendusel on kaks peamist konfiguratsioonifaili:

  1. fail struts.xml: See fail sisaldab teavetkonfiguratsioon, mida muudetakse toimingutena. Seda kasutatakse peamiselt rakenduse vaikeseadete alistamiseks. See fail luuakse tavaliselt mis tahes Strutsi projekti kataloogis WEB-INF / klasse.
  2. fail struts.properties: See fail pakub mehhanismi, mis võib raamistiku käitumist muuta. Kuna araamistik kasutab mitmeid omadusi, mida saate vastavalt vajadusele muuta.

2. Toimingud

Toimingud või tegevusklassid on kõigi Struts 2 rakenduste põhimõisted, kuna need toimivad MVC mustris kontrollerina. Teisisõnu sisaldavad tegevusklassid äriloogikat, mis aitab andmeid töödelda. Peale selle vastutab ka tegevusklassvastamine kasutaja päringule, äriloogika täitmine. Samuti aitab see raamistikul tulemuse määramisel ja tagastamisel konfiguratsioonifaili (struts.xml) alusel tagasi kasutajale, et leht View muuta.

Stuts2 tegevusklassid ei ole oma olemuselt üksikud, st iga päringuga luuakse üks selle klassi eksemplar. Seega ei pea need olema niidikindlad ning lihtsad ja sõltumatud. See muudab nende klasside testimise palju lihtsamaks.

Tegevusfaili saab luua kolmel viisil, mis on järgmised:

  • Lihtne tegevusklass
    Struts 2 tegevusklassina saab kasutada mis tahes konkreetset java klassi, kuid ainus nõue on see, et klass peab sisaldama tagasitüübi String meetodit execute (). Allpool on kood lihtsa tegevusklassi loomiseks:
pakett com.edureka.struts2.action public class DemoAction {public String execute () {return 'Welcome!' }}
  • Rakenduse Action liides
    Klass Struts 2 Actioni saab luua ka liidese com.opensymphony.xwork2.Action rakendamisega. See sisaldab ühte meetodit, s.t execute (), mille rakendusklass peab rakendama. Selle liidese juurutamisel saate kasutada mitut konstanti, näiteks EDU, VIGA, Puudub, Sisend ja Logi sisse, mida saab kasutada tulemuste lehtede jaoks.
    Koodi all on toodud näide samast:
pakett com.edureka.struts2.action import com.opensymphony.xwork2.Action avalik klass DemoAction viib ellu toimingu {public String execute () {return EDU}}
  • ActionSupport-klassi laiendamine

2. jaotises olevad tegevusklassid laiendavad üldiselt toimingu tugiklassi, mis on liidese Action vaikimisi rakendamine. See pakub veebirakenduste väljatöötamiseks mitmesuguseid hädavajalikke funktsioone, nagu andmete valideerimine, toimingu taseme teade, toimingu taseme tõrketeade, väljataseme tõrketeade ja komplektis oleva ressurssi lugemine

Allpool on toodud sama rakendamine:

pakett com.edureka.struts2.action import com.opensymphony.xwork2.ActionSupport avalik klass DemoAction laiendab ActionSupport {@Override public String execute () heidab erandit {return EDU}}

3. Püüdjad

Peatükk on Struts 2 raamistiku üks peamisi alustalasid. See pole midagi muud kui objektmillele tuginetakse taotluse eeltöötluse ja järeltöötluse ajal.See aitab kontrollida ja säilitada päringu ja vastuse tsükli sujuvat üleminekut.

Püüdurite kasutamise peamine eelis on see, et see on ühendatav. Ma mõtlen seda juhul, kui teil pole enam mingit konkreetset muret naguvalideerimise, erandite käsitlemise, logimise jms abil, saate selle hõlpsalt rakendusest eemaldada, ilma et peaksite seda uuesti installima. Selleks on vaja vaid kirje failist struts.xml kustutada.

Struts2 raamistik pakub põhjalikku komplekti eelnevalt määratletud pealtkuulajaid ja ühiseid pealtkuulajate korstnad, mille olen loetlenud allpool olevas tabelis:

Püüdja Kirjeldus
teise nimega See võimaldab parameetritel kasutaja taotluste korral olla erinevad nimenimed
märkeruut See aitab märkeruutude haldamisel, lisades märkeruutude jaoks vale parameetri väärtuse
conversionError See paigutab veateabe stringide teisendamisest parameetritüüpideks toimingu väljavigade hulka
createSession See loob kaudselt HTTP-seansi juhuks, kui seda pole olemas
silumine See pakub arendajale mitmesuguseid silumisekraane
execAndWait See suunab kasutaja vahendaja ootelehele, kui toimingut taustal käivitatakse
erand See kaardistab erandid, mis visatakse tegevusest tulemuse poole
faili üleslaadimine See hõlbustab failide hõlpsat üleslaadimist jaotises Struts 2
i18n See aitab kasutaja seansi ajal määratud lokaati jälgida
palgid See annab kasutajale lihtsa sisselogimise, genereerides väljundi käivitatava toimingu nimena
params See aitab määrata tegevuse parameetrid
valmistama Seda kasutatakse eeltöötlustööde tegemiseks
profiil See võimaldab logimistoimingute jaoks lihtsat profileerimisteavet.
ulatus See salvestab ja saab toimingu oleku kasutaja seansi või rakenduse ulatuse ajal
ServletConfig See annab tegevusele juurdepääsu mitmesugusele servlet-põhisele teabele
taimer See annab lihtsa teabe profileerimise kohta
märk See aitab kontrollida toimingu kehtivat luba, et vältida topeltvormide esitamist
valideerimine See pakub valideerimise tuge erinevatele toimingutele

4. Väärtuste virn

ValueStackjaotises Struts2 on salvestusala, kuhu kogu rakenduse andmed päringu töötlemiseks salvestatakse. Neid andmeid hoitakseActionContextobjektid, mis kasutavad sedaThreadLocalmis tahes konkreetse klienditaotluse lõime spetsiifiliste väärtuste hankimiseks.

5. OGNL

OGNL tähistab objekti-graafiku navigeerimise keelt. See on võimas väljendikeel nagu JSP ja seda kasutatakse enamastiviide ja manipuleerimine ValueStackis olevate andmetega. Pealegi aitab see ka andmete tüübi edastamisel ja teisendamisel.

Sarnaselt JSP-ga sisaldab ka OGNL rakenduse kontekstis juurobjekti. Seega saate vaikeobjekti viite kasutada märgistuse abil, mida antud juhul tähistatakse naela sümboliga. Struts 2 raamistik rakendab OGNL-i, luues ActionContext-kaardi. Allpool on loetletud ActionContext kaardi komponendid:

  • Rakendus
  • Seanss
  • Väärtuste virn
  • Taotlus
  • Parameetrid
  • Atribuudid

Sellega saate läbi põhitõed Struts 2-st. Selle Struts 2 artikli järgmises jaotises saate otse koodi sisse hüpata ja rakendada kõik, mida olete siiani õppinud.

kuidas jagada meetodit javas

Struts 2 õpetuse demo

Loon siin lihtsa rakenduse, kuhu peate sisestama oma nime ja rakendus tervitab teid. Allpool on kogu projekti struktuuri ekraanipilt:

Nagu näete, loome selles projektis 5 faili, mis on:

  1. HelloWorld.java
  2. register.jsp
  3. tere tulemast.jsp
  4. web.xml
  5. struts.xml

Märkus. Enne projekti alustamist veenduge, et Tomcat on teie süsteemi juba installitud.

I SAMM: Valige oma Eclipse'is menüü Fail> Uus> Dünaamiline veebiprojekt. Sisestage projekti nimi ja klõpsake New Runtime.

II SAMM: Siin peate valima oma süsteemi alla laaditud Apache Tomcati versiooni ja klõpsama nuppu Edasi.

III SAMM: Järgmisena klõpsake nuppu Sirvi ja navigeerige kataloogi, kuhu Tomcati sõltuvused on salvestatud. Kui olete valmis, klõpsake nuppu Lõpeta ja jätkake projekti loomisega.

IV SAMM: Lisame nüüd Strutsi purgifailid, mis on vajalikud selle projekti edukaks elluviimiseks. JAR-id saate alla laadida siit siin . Kui olete JAR-failidega valmis, kopeerige JAR-id ja kleepige need jaotisse WebContent> WEB-INF> lib.

V SAMM: Nüüd, kui oleme kõigi seadistustega valmis, saate seadistada koodifailid, alustades HelloWorld.java. Selleks paremklõpsake projekti> Uus> Klass. Täitke paketi ja klassi nimi ning klõpsake nuppu Lõpeta.

VI SAMM: Sisestage allolev kood HelloWorld.java faili.

pakett com.edureka public class HelloWorld {private String name public String getName () {return name} public void setName (String name) {this.name = name} public String execute () {return 'success'}}

VII SAMM: Järgmisena looge uus register.jsp faili WebContent all ja tippige järgmine kood:

 

VIII SAMM: Looge nüüd jälle uus tere tulemast.jsp faili WebContent all ja tippige järgmine kood:

Tere tulemast:

IX SAMM: Nüüd minge WebContent> WEB-INF ja tippige allolev kood web.xml faili.

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

X SAMM: Lõpuks valige jaotises Java ressursid> src struts.xml faili

tere tulemast.jsp

XI SAMM: Nüüd minge register.jsp lehel ja paremklõpsake sellel. Rakenduse käivitamiseks valige Run on Server.

Sellega jõuame Struts 2 juhendaja artikli lõpuni. Kui soovite Java kohta rohkem teada saada, võite pöörduda meie poole .

Nüüd, kui olete aru saanud, mis on Struts 2 õpetus, vaadake Edureka, usaldusväärne veebiõppeettevõte, mille võrgustik hõlmab üle 250 000 rahuloleva õppija, levinud üle kogu maailma. Edureka Java J2EE ja SOA koolitus- ja sertifitseerimiskursus on mõeldud õpilastele ja spetsialistidele, kes soovivad olla Java arendajad. Kursus on loodud selleks, et anda teile Java programmeerimises edukas algus ja õpetada teid nii Java-põhiprogrammide kui ka edasijõudnute mõistete ning erinevate Java-raamistike, näiteks Hibernate & Spring, jaoks.

Kas teil on meile küsimus? Palun mainige seda selle artikli „Struts 2 juhendaja“ kommentaaride osas ja võtame teiega ühendust niipea kui võimalik.