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 toed 2?
- Struts 2 funktsioonid
- Püstikute arhitektuur 2
- Keskkonna seadistamine
- Põhimõtted
- Struts 2 õpetuse demo
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
- 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.
- 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.
- 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.
- Lihtne integreerimine: See võimaldab hõlpsasti integreeruda teiste veebiraamistikega, näiteks , DWR, SiteMesh ja plaadid.
- 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.
- Integreeri vaate tehnoloogiad: Struts2 abil saate hõlpsasti integreeruda erinevate vaatetehnoloogiatega, nagu XSLT, JSP, Freemarker, kiirus jne.
- Teema ja mallid: Struts 2 pakub tuge kolme tüüpi teemadele:
- Xhtml
- Lihtne
- 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
Nagu ü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:
- 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.
- 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:
- HelloWorld.java
- register.jsp
- tere tulemast.jsp
- web.xml
- 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.