A rugóstagok és a rugóstagok közötti különbség2

A rugóstagok és a rugóstagok közötti különbség2
A rugóstagok és a rugóstagok közötti különbség2

Videó: A rugóstagok és a rugóstagok közötti különbség2

Videó: A rugóstagok és a rugóstagok közötti különbség2
Videó: Mennyi RAM kell játékokhoz? 2024, Július
Anonim

Struts vs Struts2

A Struts (más néven Apache Struts vagy Struts 1) egy Java nyelven írt többplatformos nyílt forráskódú keretrendszer, amely Java EE webalkalmazások fejlesztésére szolgál. Ez volt az egyik kezdeti Java EE webalkalmazás-keretrendszer. De néhány évvel később megérkezett a Struts2 (vagy a Struts 2-es verziója), és ez egy teljesen más és nagyon továbbfejlesztett webalkalmazás-keretrendszer volt. Kevés olyan problémával foglalkozott, amelyet az eredeti verzióban hiányosságnak tekintettek. Jelenleg a Struts2-t nagyon erősen használják Java EE alkalmazások fejlesztésére a világon.

Mi az a Struts?

A Struts (Struts 1) keretrendszer volt az egyik kezdeti webalkalmazás-keretrendszer a Java EE webalkalmazások fejlesztéséhez. A Struts keretrendszer az MVC (Model-View-Controller) architektúra használatát támogatja. Ez a Java Servlet API kiterjesztése. Craig McClanahan a Struts eredeti alkotója. Kezdetben Jakaratha Struts néven volt ismert, és az Apache Software Foundation Jakarta Projectje alatt tartották fenn. Az Apache License 2.0 alatt jelent meg. A Struts keretrendszert kérésalapú keretrendszernek nevezik, és három fő összetevőből áll: egy kéréskezelőből, egy válaszkezelőből és egy címkekönyvtárból. A szabványos URI (Uniform Resource Identifier) egy kéréskezelőhöz van leképezve. A válaszkezelő felelős az irányítás átadásáért. Interaktív alkalmazások létrehozásához űrlapokkal a címkekönyvtár szolgáltatásai használhatók. A támasztékok támogatják a REST alkalmazásokat és különféle technológiákat, mint például a SOAP, AJAX stb.

Mi az a Struts2?

A Struts keretrendszerben bizonyos korlátozásokat (főleg a prezentációs réteg, a kéréskezelő réteg és a modell közötti elválasztás hiányát) a Java EE fejlesztői abban az időben észleltek, és ennek következtében néhány évvel később megérkezett a Struts2. Valójában a Struts2 teljesen más volt, mint a Struts. Valójában még csak nem is ugyanazt a kódbázist használták, mert a Struts2 egyszerűen a WebWork 2.2 keretrendszer átnevezésének eredménye volt (azaz a WebWork és a Struts közösségek, amelyek egy ideig külön dolgoztak, végül összefogtak, hogy kitalálják a Struts2-t). Jelenlegi stabil kiadása a 2.2.3-as verzió, amely 2011 májusában jelent meg.

Mi a különbség a Struts és a Struts2 között?

A Struts keretrendszer számos problémája közül az egyik az volt, hogy interfészek helyett absztrakt osztályokra kellett programozni. Ezt a Struts2 keretrendszer oldotta meg. Például a Struts keretrendszer megkövetelte az Action osztályok kiterjesztését az absztrakt alaposztályokból, de a Struts2 Actions megvalósíthat egy Action interfészt. A két verzió szálfűzési modelljének különbségei miatt a Struts keretrendszerben az Action objektumokkal kapcsolatos szálbiztonsági problémák nem fordulnak elő a Struts2 keretrendszerben. Ennek az az oka, hogy a Struts2 Action objektumokat minden kérésnél példányosítják, míg a Struts keretrendszerben lévő műveletnek csak egy példánya van az adott művelet összes kérésének kezelésére. Az Actions in Struts keretrendszerrel ellentétben a Struts2 Actions nem függ a Servlet API-tól.

A Struts2 keretrendszer tesztelhetősége viszonylag magasabb, mint a Struts keretrendszer. A Struts2 Actions-t egyszerűen a három lépést követve tesztelheti: példányosítás, tulajdonságok beállítása és metódusok meghívása. A bemenetek begyűjtése egyszerűbb a Struts2 keretrendszerben, mivel az Action tulajdonságok bemeneti tulajdonságokként kerülnek felhasználásra anélkül, hogy meg kellene tartani egy második bemeneti objektumot. A JSTL integráció támogatásán kívül (amely a Strutsban megtalálható), a Struts2 keretrendszer erősebb és kifejezőbb OGNL-t (Object Graph Notation Language) tud használni. A típuskonverzióhoz a Strut és a Strut2 Commons-Beanutils, illetve OGNL-t használ. E fejlesztések miatt a Struts2 keretrendszer nagyon kiforrott keretrendszernek számít, és nagyon népszerű a Java EE programozók körében. Másrészt a Struts keretrendszer mára elavultnak számít.

Ajánlott: