Różnica między rozpórkami a rozpórkami2

Różnica między rozpórkami a rozpórkami2
Różnica między rozpórkami a rozpórkami2

Wideo: Różnica między rozpórkami a rozpórkami2

Wideo: Różnica między rozpórkami a rozpórkami2
Wideo: Memory vs Storage - What's the Difference? 2024, Lipiec
Anonim

Rozpórki kontra rozpórki2

Struts (znany również jako Apache Struts lub Struts 1) to wieloplatformowa platforma open source napisana w języku Java, przeznaczona do tworzenia aplikacji internetowych Java EE. Był to jeden z pierwszych frameworków aplikacji internetowych Java EE. Ale kilka lat później pojawił się Struts2 (lub Struts w wersji 2) i był to zupełnie inny i znacznie ulepszony framework aplikacji internetowych. Zajęto się kilkoma kwestiami, które w pierwotnej wersji były postrzegane jako braki. Obecnie Struts2 jest bardzo intensywnie używany do tworzenia aplikacji Java EE na całym świecie.

Co to są rozpórki?

Struts (Struts 1) był jednym z pierwszych frameworków aplikacji internetowych do tworzenia aplikacji internetowych Java EE. Struktura Struts zachęca do korzystania z architektury MVC (Model-View-Controller). Jest rozszerzeniem Java Servlet API. Craig McClanahan jest oryginalnym twórcą Struts. Początkowo był znany jako Jakaratha Struts i był utrzymywany w ramach Jakarta Project z Apache Software Foundation. Jest wydany na licencji Apache License 2.0. Struktura Struts nazywana jest strukturą opartą na żądaniach i składa się z trzech głównych komponentów: obsługi żądań, obsługi odpowiedzi i biblioteki znaczników. Standardowy identyfikator URI (Uniform Resource Identifier) jest mapowany na procedurę obsługi żądań. Obsługa odpowiedzi jest odpowiedzialna za przekazanie kontroli. Do tworzenia interaktywnych aplikacji z formularzami można wykorzystać funkcje oferowane przez bibliotekę znaczników. Struts obsługuje aplikacje REST i różne technologie, takie jak SOAP, AJAX itp.

Co to jest Struts2?

Struts był postrzegany w tamtym czasie jako posiadający pewne ograniczenia (głównie brak separacji między warstwą prezentacji, warstwą obsługi żądań i modelem) przez programistów Java EE, w związku z czym kilka lat później pojawił się Struts2. W rzeczywistości Struts2 był zupełnie inny niż Struts. W rzeczywistości nie dzielili nawet tej samej bazy kodu, ponieważ Struts2 był po prostu wynikiem zmiany nazwy frameworka WebWork 2.2 (tj. społeczności WebWork i Struts, które pracowały oddzielnie przez jakiś czas, ostatecznie połączyły ręce, aby stworzyć Struts2). Jego obecna stabilna wersja to wersja 2.2.3, która została wydana w maju 2011 roku.

Jaka jest różnica między Struts a Struts2?

Jednym z wielu problemów frameworka Struts była potrzeba programowania klas abstrakcyjnych zamiast interfejsów. Zostało to rozwiązane przez framework Struts2. Na przykład struktura Struts wymagała rozszerzenia klas Action z abstrakcyjnych klas bazowych, ale akcje Struts2 mogą implementować interfejs Action. Ze względu na różnice w modelu wątków między dwiema wersjami problemy z bezpieczeństwem wątków, które pojawiły się we frameworku Struts dotyczące obiektów Action, nie występują we frameworku Struts2. Powodem jest to, że obiekty akcji Struts2 są tworzone dla każdego żądania, podczas gdy akcja w strukturze Struts ma tylko jedną instancję do obsługi wszystkich żądań dla tej akcji. W przeciwieństwie do akcji w strukturze Struts, akcje Struts2 nie są zależne od interfejsu API Servlet.

Testowalność struktury Struts2 jest porównywalnie wyższa niż struktury Struts. Akcje Struts2 można testować, wykonując po prostu trzy kroki: tworzenie instancji, ustawianie właściwości i wywoływanie metod. Zbieranie danych wejściowych jest łatwiejsze w strukturze Struts2, ponieważ właściwości akcji są używane jako właściwości wejściowe, bez konieczności przechowywania drugiego obiektu wejściowego. Oprócz obsługi integracji JSTL (która jest obecna w Struts), framework Struts2 może używać bardziej wydajnego i ekspresyjnego języka OGNL (Object Graph Notation Language). Do konwersji typów Strut i Strut2 używają odpowiednio Commons-Beanutils i OGNL. Z powodu tych ulepszeń framework Struts2 jest uważany za bardzo dojrzały framework i jest bardzo popularny wśród programistów Java EE. Z drugiej strony framework Struts jest obecnie uważany za przestarzały.

Zalecana: