Skillnad Mellan Struts Och Struts2

Skillnad Mellan Struts Och Struts2
Skillnad Mellan Struts Och Struts2

Video: Skillnad Mellan Struts Och Struts2

Video: Skillnad Mellan Struts Och Struts2
Video: Struts1 vs Struts2 2024, November
Anonim

Struts vs Struts2

Struts (även känd som Apache Struts eller Struts 1) är ett plattformsplattform med öppen källkod skriven i Java, som är avsedd för utveckling av Java EE-webbapplikationer. Det var en av de första ramarna för Java EE-webbapplikationer. Men några år senare kom Struts2 (eller Struts version 2), och det var en helt annan och mycket förbättrad ram för webbapplikationer. Det hade tagit upp några frågor som upplevdes som brister i den ursprungliga versionen. Nu används Struts2 mycket hårt för att utveckla Java EE-applikationer i världen.

Vad är struts?

Struts (Struts 1) framework var en av de första ramarna för webbapplikationer för utveckling av Java EE-webbapplikationer. Struts framework uppmuntrar användningen av MVC-arkitektur (Model-View-Controller). Det är en förlängning av Java Servlet API. Craig McClanahan är den ursprungliga skaparen av Struts. Ursprungligen var det känt som Jakaratha Struts och upprätthölls under Jakarta Project of Apache Software Foundation. Den släpps under Apache License 2.0. Struts framework kallas förfrågningsbaserat ramverk och består av tre huvudkomponenter: en begäranhanterare, en svarshanterare och ett taggbibliotek. Standard-URI (Uniform Resource Identifier) mappas till en begäranhanterare. Svarshanteraren ansvarar för att överföra kontrollen. För att skapa interaktiva applikationer med formulär kan de funktioner som erbjuds av taggbiblioteket användas. Struts stöder REST-applikationer och olika tekniker som SOAP, AJAX, etc.

Vad är Struts2?

Struts ramverk uppfattades innehålla vissa begränsningar (huvudsakligen bristen på separation mellan presentationslagret, begäran hanteringslagret och modellen) av Java EE-utvecklarna vid den tiden, och följaktligen några år senare kom Struts2. Egentligen var Struts2 helt annorlunda än Struts. I själva verket delade de inte ens samma kodbas eftersom Struts2 helt enkelt var resultatet av att byta namn på WebWork 2.2-ramverket (dvs WebWork och Struts-samhällen som arbetade separat under en tid slutligen gick ihop för att komma med Struts2). Den nuvarande stabila versionen är version 2.2.3, som släpptes i maj 2011.

Vad är skillnaden mellan Struts och Struts2?

Ett av de många problemen med Struts-ramverket var behovet av programmering till abstrakta klasser istället för gränssnitt. Detta löstes med Struts2 framework. Struts-ramverket krävde till exempel att Action-klasser skulle utvidgas från de abstrakta basklasserna, men Struts2 Actions kan implementera ett Action-gränssnitt. På grund av skillnaderna i trådmodellen mellan de två versionerna uppstår inte trådsäkerhetsfrågor som kom upp i Struts-ramverket angående Action-objekt i Struts2-ramverket. Anledningen är att Struts2 Action-objekt instansieras för varje begäran, medan en Action in Struts-ram endast har en instans för att hantera alla förfrågningar för den åtgärden. Till skillnad från Actions in Struts framework är Struts2 Actions inte beroende av Servlet API.

Testbarheten för Struts2-ramverket är jämförelsevis högre än Struts-ramverket. Du kan testa Struts2 Actions helt enkelt genom att följa de tre stegen: instantiering, inställningsegenskaper och anrop av metoder. Det är lättare att skörda inmatningar i Struts2-ramverket eftersom åtgärdsegenskaper används som inmatningsegenskaper utan att behöva behålla ett andra inmatningsobjekt. Förutom stödet för JSTL-integration (som finns i Struts) kan Struts2-ramverket använda kraftfullare och mer uttrycksfullt OGNL (Object Graph Notation Language). För typkonvertering använder Strut och Strut2 Commons-Beanutils respektive OGNL. På grund av dessa förbättringar anses Struts2-ramverket vara ett mycket moget ramverk och det är mycket populärt bland Java EE-programmerare. Å andra sidan anses Struts-ramverket nu vara föråldrat.

Rekommenderas: