Verschil tussen Struts en Spring MVC

Anonim

Struts vs Spring MVC

Struts Framework is een van de eerste web applicatie kaders voor het ontwikkelen van Java EE web applicaties. De lente is een open source applicatie kader. Een aantal keer na de introductie van het lente kader, hebben de ontwikkelaars een MVC-kader toegevoegd aan het Lente-kader, in de hoop om enkele beperkingen aan te pakken die zij in Struts waarnemen. Maar enkele jaren later kwam Struts2 (of Struts versie 2), en het was helemaal anders en sterk verbeterde web applicatie kader. Nu worden zowel Struts als Spring MVC zeer zwaar gebruikt voor het ontwikkelen van Java EE applicaties ter wereld.

Wat is Struts?

Struts (ook bekend als Apache Struts) is een open platform platform op het platform dat is geschreven in Java, die bedoeld is voor het ontwikkelen van Java EE web applicaties. Struts moedigen het gebruik van MVC (Model-View-Controller) architectuur aan. Het is een uitbreiding van de Java Servlet API. Craig McClanahan is de oorspronkelijke schepper van Struts. Aanvankelijk was het bekend als Jakaratha Struts, en werd onder het Jakarta Project van Apache Software Foundation gehandhaafd. De huidige stabiele versie is versie 2. 2. 3, die in mei 2011 werd vrijgegeven. Het wordt vrijgegeven onder Apache License 2. 0. Struts-framework wordt een op verzoek gebaseerde kader genoemd en bestaat uit drie hoofdcomponenten: een verzoekshanteraar, een reactiehandler en een tagbibliotheek. Standaard URI (Uniform Resource Identifier) ​​is toegewezen aan een request handler. Response Handler is verantwoordelijk voor het overdragen van de controle. Om interactieve applicaties met formulieren te maken, kunnen de functies van de tag library worden gebruikt. Struts ondersteunen REST applicaties en diverse technologieën zoals SOAP, AJAX, enz.

Wat is Spring MVC?

De lente is een open source applicatie kader. Het is ontwikkeld door Rod Johnson, en de eerste versie is in 2004 uitgebracht. Lente 3. 0. 5 is de huidige versie van het lente kader. Het is gelicentieerd onder Apache 2. 0 licentie. Elke Java-applicatie kan de kernkenmerken van het lente-kader gebruiken. Er zijn verschillende modules in het lente kader, en MVC is een van hen. Het Lente MVC-kader was niet onderdeel van hun oorspronkelijke plan. De reden dat de ontwikkelaars van de lente hun eigen MVC-kader hebben ontwikkeld, waren in feite oplossingen te bieden voor wat ze lieten zien als tekortkomingen in de Struts (versie 1) en andere soortgelijke kaders. In het bijzonder hebben ze gezegd dat ze het gebrek aan scheiding tussen de presentatielaag willen aanpakken, de behandelingslaag en het model vragen. Spring MVC is ook een op aanvraag gebaseerde web applicatie kader.

Wat is het verschil tussen Struts en Spring MVC?

Hoewel Spring MVC en Struts twee populaire web applicatie kaders zijn die worden gebruikt om Java EE web applicaties te ontwikkelen, hebben ze hun verschillen.In feite is Spring MVC ontwikkeld om enkele beperkingen in Struts aan te pakken (versie 1). Maar Struts2 is een sterk verbeterd kader dan versie 1 (ze delen niet eens dezelfde code base), en daarom zijn de Spring MVC en Structs2 zeer vergelijkbaar.

Een van de voornaamste voordelen van Spring MVC is dat het mogelijk is naadloze integratie met veel weergaveopties zoals JSP / JSTL, Tiles, FreeMaker, Excel, PDF en JSON te hebben. Maar in tegenstelling tot Struts biedt Spring MVC geen ingebouwde AJAX-ondersteuning (moet een AJAX-bibliotheek van derden gebruiken).

Uiteindelijk worden beide beschouwd als zeer rijpe kaders, en het kiezen tussen de twee komt neer op de persoonlijke voorkeur. Het is belangrijk om hier op te merken dat als er sprake is van negatieve gevoelens tegen stutten, het gevolg zijn van de tekortkomingen die gevonden zijn in Struts versie 1 (die nu beschouwd wordt als verouderd).