From Wikipedia, the free encyclopedia
Az Apache Struts egy nem folytatott nyílt forráskódú webalkalmazás keretrendszer Java EE webalkalmazások fejlesztéséhez. A Java Servlet APIt használja és terjeszti ki, hogy segítse a fejlesztőket a modell–nézet–vezérlő (angol rövidítéssel MVC) architektúra megvalósításában. Eredetileg Craig McClanahan fejlesztette ki és adományozta az Apache Foundation-nak 2000 májusában. Eredetileg az Apache Jakarta projektje része volt, és Jakarta Struts-ként ismert, 2005-ben vált felső szintű Apache projektté.
Apache Struts | |
![]() | |
Fejlesztő | Apache Software Foundation |
Első kiadás | 2000-05 |
Legfrissebb stabil kiadás | 6.6.0 (stabil verzió, 2024. július 20.)[1] |
Programozási nyelv | Java |
Operációs rendszer | multi-platform |
Platform | multi-platform (JVM) |
Állapot | End-of-life,[2] superseded by Apache Struts 2 |
Kategória | web framework |
Licenc | Apache License 2.0 |
Az Apache Struts weboldala |
A WebWork keretrendszer az Apache Struts-ból alakult ki azért, hogy továbbfejlesztéseket és finomításokat nyújtson, megtartva a Struts keretrendszer eredeti általános architektúráját. 2005 decemberében bejelentették, hogy a Struts-ba vissza merge-elik a WebWork-öt. A WebWork 2.2 vált a Apache Struts 2-vé, amely 2007-ben érte el az első teljes kiadását.
A sztenderd Java EE web alkalmazásban a kliens tipikusan egy web form-on keresztül hívja a szervert. Az információt aztán vagy a Java Servletnek továbbítják, amely kölcsönhatásba kerül az adatbázissal és HTML-formázott választ állít elő, vagy továbbadják egy JavaServer Pages (JSP) dokumentumnak, amely keveredik a HTML-lel és Java kóddal, hogy ugyanazt az eredményt adja. Mindkét megközelítést nagy projektekhez gyakran nem tartják megfelelőnek, mert az alkalmazás logika keveredik a megjelenítő réteggel, amely megnehezíti a karbantartást.
A Struts célja, hogy külön válassza a modellt (alkalmazás logika amely kölcsönhatásba kerül az adatbázissal) a megjelenítéstől (HTML oldalakat állít elő kliensnek) és vezérlőtől (példány, amely továbbítja az információt a megjelenítés és modell között).
Struts provides the controller (a servlet known as ActionServlet
) and facilitates the writing of templates for the view or presentation layer (typically in JSP, but XML/XSLT and Velocity are also supported). The web application programmer is responsible for writing the model code, and for creating a central configuration file struts-config.xml
that binds together model, view, and controller.
Requests from the client are sent to the controller in the form of "Actions" defined in the configuration file; if the controller receives such a request it calls the corresponding Action class that interacts with the application-specific model code. The model code returns an "ActionForward", a string telling the controller what output page to send to the client. Information is passed between model and view in the form of special JavaBeans. A powerful custom tag library allows it from the presentation layer to read and write the content of these beans without the need for any embedded Java code.
A Struts Model 2-es kérés alapú Web alkalmazás keretrendszerként kategorizálható.[3]
A Struts támogatja továbbá többnyelvűséget a web forms segítségével és van egy sablon mechanizmusa is, amelyet "Tiles"-nak hívank. Ez utóbbi lehetővé teszi a prezentációs rétegnek, hogy független fej- és lábléc, menünavigáció és tartalom komponensekből legyen előállítható.