Skillnaden mellan Struts och Spring MVC

Anonim

Struts vs Spring MVC

Struts Framework är en av de första webbapplikationsramarna för att utveckla Java EE webbapplikationer. Våren är en öppen källkodsram. Någon gång efter introduktionen av vårramen lade utvecklarna en MVC-ram till vårens ramverk och hoppades kunna ta itu med några av de begränsningar som de uppfattade i Struts. Men några år senare kom Struts2 (eller Struts version 2), och det var helt annorlunda och starkt förbättrad webbapplikationsram. Nu används både Struts och Spring MVC mycket tungt för att utveckla Java EE-applikationer i världen.

Vad är Struts?

Struts (även kallad Apache Struts) är en öppen plattform för öppen källkod skrivet i Java, som är avsedd att utveckla Java EE webbapplikationer. Struts uppmuntrar användningen av MVC (Model-View-Controller) arkitektur. Det är en förlängning av Java Servlet API. Craig McClanahan är den ursprungliga skaparen av Struts. Ursprungligen var det känt som Jakaratha Struts, och upprätthölls under Jakarta Project of Apache Software Foundation. Den nuvarande stabila versionen är version 2. 2. 3, som släpptes i maj 2011. Den släpps under Apache License 2. 0. Struts Framework kallas en begäranbaserad ram och består av tre huvudkomponenter: en förfråganhanterare, en svarhanterare och ett taggbibliotek. Standard URI (Uniform Resource Identifier) ​​är mappad till en begäranhanterare. Response Handler ansvarar för överföring av kontroll. För att skapa interaktiva applikationer med formulär kan funktionerna som erbjuds av taggbiblioteket utnyttjas. Struts stödjer REST applikationer och olika teknologier som SOAP, AJAX, etc.

Vad är Spring MVC?

Våren är en öppen källkodsram. Det utvecklades av Rod Johnson, och den första versionen släpptes 2004. Våren 3 0. 5 är den nuvarande versionen av vårramen. Det är licensierat enligt Apache 2. 0 licens. Alla Java-program kan använda kärnfunktionerna i vårramen. Det finns flera moduler under våren, och MVC är en av dem. Vårens MVC-ram var inte en del av sin ursprungliga plan. Faktum är att orsaken till att vårutvecklarna kom med sina egna MVC-ramar var att tillhandahålla lösningar på vad de visade som brister i Struts (version 1) och andra liknande ramar. I synnerhet sa de att de ville ta itu med bristen på separation mellan presentationsskiktet, begäran om hanteringsskikt och modellen. Spring MVC är också en begäranbaserad webbapplikationsram.

Vad är skillnaden mellan Struts och Spring MVC?

Även om Spring MVC och Struts är två populära webbapplikationsramar som används för att utveckla Java EE webbprogram, har de sina skillnader.Faktum är att Spring MVC utvecklades för att ta itu med några begränsningar i Struts (version 1). Men Struts2 är en mycket förbättrad ram än version 1 (de delar inte ens samma kodbas), och därför är Spring MVC och Structs2 mycket jämförbara.

En av de främsta fördelarna med Spring MVC är att det är möjligt att ha sömlös integrering med många visningsalternativ som JSP / JSTL, Tiles, FreeMaker, Excel, PDF och JSON. Men, till skillnad från Struts, ger Spring MVC inte inbyggt AJAX-stöd (behöver använda AJAX-bibliotek från tredje part).

I slutändan betraktas båda av dem som mycket mogna ramverk, och valet mellan de två kommer ner till den personliga preferensen. Det är viktigt att notera här att om det finns några negativa känslor mot stötar beror de bara på de brister som hittades i Struts version 1 (som nu anses vara föråldrad).