Struts vs Spring MVC
Struts framework is een van de eerste webapplicatieframeworks voor het ontwikkelen van Java EE-webapplicaties. Spring is een open source applicatieraamwerk. Enige tijd na de introductie van het Spring-framework hebben de ontwikkelaars een MVC-framework aan het Spring-framework toegevoegd, in de hoop een aantal van de beperkingen die ze in Struts zagen, aan te pakken. Maar een paar jaar later arriveerde Struts2 (of Struts-versie 2), en het was een heel ander en sterk verbeterd webtoepassingsframework. Nu worden zowel Struts als Spring MVC zeer intensief gebruikt voor het ontwikkelen van Java EE-applicaties in de wereld.
Wat is stutten?
Struts (ook bekend als Apache Struts) is een platformonafhankelijk open source framework geschreven in Java, dat bedoeld is voor het ontwikkelen van Java EE-webapplicaties. Struts moedigen het gebruik van MVC-architectuur (Model-View-Controller) aan. Het is een uitbreiding van de Java Servlet API. Craig McClanahan is de oorspronkelijke maker van Struts. Aanvankelijk stond het bekend als Jakaratha Struts en werd het onderhouden onder Jakarta Project van Apache Software Foundation. De huidige stabiele release is versie 2.2.3, die werd uitgebracht in mei 2011. Het is uitgebracht onder Apache-licentie 2.0. Struts-framework wordt een request-based framework genoemd en bestaat uit drie hoofdcomponenten: een request-handler, een response-handler en een tagbibliotheek. Standaard URI (Uniform Resource Identifier) wordt toegewezen aan een verzoekafhandelaar. Response handler is verantwoordelijk voor het overdragen van controle. Om interactieve toepassingen met formulieren te maken, kunnen de functies van de tagbibliotheek worden gebruikt. Struts ondersteunen REST-applicaties en verschillende technologieën zoals SOAP, AJAX, enz.
Wat is Spring MVC?
Spring is een open source applicatieraamwerk. Het is ontwikkeld door Rod Johnson,, en de eerste versie werd uitgebracht in 2004. Spring 3.0.5 is de huidige versie van het Spring-framework. Het is gelicentieerd onder Apache 2.0-licentie. Elke Java-toepassing kan de kernfuncties van het Spring-framework gebruiken. Er zijn verschillende modules in het Spring-framework en MVC is er een van. Het Spring MVC-framework maakte geen deel uit van hun oorspronkelijke plan. De reden dat Spring-ontwikkelaars met hun eigen MVC-framework kwamen, was om oplossingen te bieden voor wat ze als tekortkomingen in de Struts (versie 1) en andere soortgelijke frameworks aantoonden. Ze zeiden met name dat ze het gebrek aan scheiding tussen de presentatielaag, de laag voor het verwerken van verzoeken en het model wilden aanpakken. Spring MVC is ook een op verzoeken gebaseerd raamwerk voor webapplicaties.
Wat is het verschil tussen Struts en Spring MVC?
Hoewel Spring MVC en Struts twee populaire frameworks voor webapplicaties zijn die worden gebruikt voor het ontwikkelen van Java EE-webapplicaties, hebben ze hun verschillen. In feite is Spring MVC ontwikkeld om enkele beperkingen in Struts (versie 1) aan te pakken. Maar Struts2 is een sterk verbeterd framework dan versie 1 (ze delen niet eens dezelfde codebasis), en daarom zijn de Spring MVC en Structs2 zeer vergelijkbaar.
Een van de belangrijkste voordelen van Spring MVC is dat het mogelijk is om naadloze integratie te hebben met veel weergave-opties zoals JSP/JSTL, Tiles, FreeMaker, Excel, PDF en JSON. Maar, in tegenstelling tot Struts, biedt Spring MVC geen ingebouwde AJAX-ondersteuning (je moet een AJAX-bibliotheek van derden gebruiken).
Uiteindelijk worden beide beschouwd als zeer volwassen kaders, en de keuze tussen de twee komt neer op persoonlijke voorkeur. Het is belangrijk om hier op te merken dat als er negatieve gevoelens zijn ten aanzien van stutten, deze alleen te wijten zijn aan de tekortkomingen die werden gevonden in Struts-versie 1 (die nu als verouderd wordt beschouwd).