Forskellen Mellem Stivere Og Stivere2

Forskellen Mellem Stivere Og Stivere2
Forskellen Mellem Stivere Og Stivere2

Video: Forskellen Mellem Stivere Og Stivere2

Video: Forskellen Mellem Stivere Og Stivere2
Video: Совершенно новая Émonda 2024, April
Anonim

Struts vs Struts2

Struts (også kendt som Apache Struts eller Struts 1) er en open source-ramme på tværs af platforme skrevet i Java, som er beregnet til udvikling af Java EE-webapplikationer. Det var en af de oprindelige Java EE-webapplikationsrammer. Men få år senere ankom Struts2 (eller Struts version 2), og det var en helt anden og stærkt forbedret webapplikationsramme. Det havde behandlet få problemer, der blev opfattet som mangler i den oprindelige version. Nu bruges Struts2 meget stærkt til udvikling af Java EE-applikationer i verden.

Hvad er struts?

Struts (Struts 1) framework var en af de indledende rammer for webapplikationer til udvikling af Java EE-webapplikationer. Struts framework opmuntrer brugen af MVC-arkitektur (Model-View-Controller). Det er en udvidelse af Java Servlet API. Craig McClanahan er den oprindelige skaber af Struts. Oprindeligt var det kendt som Jakaratha Struts og blev vedligeholdt under Jakarta Project af Apache Software Foundation. Det frigives under Apache License 2.0. Struts framework kaldes en anmodningsbaseret ramme, og den består af tre hovedkomponenter: en anmodningshåndterer, en svarhåndterer og et tagbibliotek. Standard URI (Uniform Resource Identifier) er tilknyttet en anmodningshåndterer. Svarhåndterer er ansvarlig for overførsel af kontrol. For at oprette interaktive applikationer med formularer kan funktionerne i tagbiblioteket bruges. Struts understøtter REST-applikationer og forskellige teknologier som SOAP, AJAX osv.

Hvad er Struts2?

Struts framework blev opfattet at indeholde visse begrænsninger (hovedsagelig manglen på adskillelse mellem præsentationslaget, anmodningshåndteringslaget og modellen) af Java EE-udviklerne på det tidspunkt, og følgelig få år senere ankom Struts2. Faktisk var Struts2 helt anderledes end Struts. Faktisk delte de ikke engang den samme kodebase, fordi Struts2 simpelthen var resultatet af omdøbning af WebWork 2.2-rammen (dvs. WebWork og Struts-samfund, der arbejdede separat i nogen tid, sluttede i sidste ende hænderne for at komme med Struts2). Dens nuværende stabile udgivelse er version 2.2.3, som blev udgivet i maj 2011.

Hvad er forskellen mellem Struts og Struts2?

Et af de mange problemer med Struts framework var behovet for programmering til abstrakte klasser i stedet for grænseflader. Dette blev løst af Struts2 framework. For eksempel krævede Struts-rammer, at handlingsklasser skulle udvides fra de abstrakte basisklasser, men Struts2 Actions kan implementere en Action-grænseflade. På grund af forskellene i trådmodellen mellem de to versioner forekommer trådsikkerhedsspørgsmål, der kom op i Struts framework med hensyn til Action-objekter, ikke i Struts2 framework. Årsagen er, at Struts2-handlingsobjekter instantieres for hver anmodning, mens en Action in Struts-ramme kun har en instans til at håndtere alle anmodninger om den pågældende handling. I modsætning til Actions in Struts-rammen er Struts2 Actions ikke afhængige af Servlet API.

Testbarheden af Struts2 framework er forholdsvis højere end Struts framework. Du kan teste Struts2 Actions ved blot at følge de tre trin: instantiering, indstilling af egenskaber og påkaldelse af metoder. Høsting af input er lettere i Struts2 framework, da Action-egenskaber bruges som input-egenskaber uden at beholde et andet input-objekt. Bortset fra understøttelsen af JSTL-integration (som findes i Struts), kan Struts2 framework bruge mere kraftfuld og ekspressiv OGNL (Object Graph Notation Language). Til typekonvertering bruger Strut og Strut2 henholdsvis Commons-Beanutils og OGNL. På grund af disse forbedringer betragtes Struts2-rammen som en meget moden ramme, og den er meget populær blandt Java EE-programmører. På den anden side betragtes Struts framework nu som forældet.

Anbefalet: