Diferența dintre Struts și Spring MVC

Anonim

Struts vs Spring MVC

Cadrul Struts este unul dintre cadrele inițiale de aplicații web pentru dezvoltarea aplicațiilor web Java EE. Spring este un cadru de aplicații open source. La un moment dat după introducerea cadrului de primăvară, dezvoltatorii au adăugat un cadru MVC la cadrul de primăvară, sperând să abordeze unele dintre limitările pe care le-au perceput în Struts. Dar câțiva ani mai târziu, Struts2 (sau Struts versiunea 2) a sosit, și a fost complet diferit și extrem de îmbunătățit cadru de aplicare web. Acum, atât Struts, cât și MVC de primăvară sunt folosite foarte mult pentru dezvoltarea aplicațiilor Java EE din lume.

Ce este Struts?

Struts (cunoscut și sub numele de Apache Struts) este un framework open-source de tip open-source, scris în Java, destinat dezvoltării aplicațiilor web Java EE. Struts încurajează utilizarea arhitecturii MVC (Model-View-Controller). Este o extensie a Java Servlet API. Craig McClanahan este creatorul original al Struts. Inițial a fost cunoscut ca Jakaratha Struts și a fost menținut sub Proiectul Jakarta al Fundației Apache Software. Versiunea actuală stabilă este versiunea 2. 2. 3, care a fost lansată în luna mai 2011. Este lansată sub licența Apache 2. 2. Structura de cadre se numește cadru bazat pe cerere și este alcătuită din trei componente principale: un handler de solicitare, un handler de răspuns și o bibliotecă de etichete. Standard URI (Uniform Resource Identifier) ​​este mapat la un handler de solicitare. Operatorul de răspuns este responsabil pentru transferul de control. Pentru a crea aplicații interactive cu formulare, pot fi utilizate funcțiile oferite de biblioteca de etichete. Struts acceptă aplicații REST și diverse tehnologii precum SOAP, AJAX etc.

Ce este MVC de primăvară?

Spring este un cadru de aplicații open source. Acesta a fost dezvoltat de Rod Johnson, și prima versiune a fost lansată în 2004. Primăvara 3. 0. 5 este versiunea curentă a cadrului de primăvară. Este licențiat sub licență Apache 2. 0. Orice aplicație Java poate utiliza caracteristicile principale ale cadrului de primăvară. Există mai multe module în cadrul primăverii, iar MVC este una dintre ele. Cadrul MVC de primăvară nu făcea parte din planul inițial. De fapt, motivul pentru care dezvoltatorii de primăvară au venit cu propriul cadru MVC a fost să ofere soluții la ceea ce au arătat ca deficiențe în structurile Struts (versiunea 1) și alte cadre similare. În special, ei au spus că au vrut să abordeze lipsa de separare între stratul de prezentare, stratul de manipulare a cererii și modelul. MVC de primăvară este, de asemenea, un cadru de cerere web bazat pe cerere.

Care este diferența dintre Struts și Spring MVC?

Deși primăvara MVC și Struts sunt două cadre populare de aplicații web folosite pentru dezvoltarea aplicațiilor web Java EE, acestea au diferențele.De fapt, MVC de primăvară a fost dezvoltată pentru a aborda câteva limitări în Struts (versiunea 1). Dar Struts2 este un cadru foarte îmbunătățit decât versiunea 1 (nici măcar nu au aceeași bază de cod) și, prin urmare, MVC de primăvară și Structs2 sunt foarte comparabile.

Unul dintre principalele avantaje ale MVC de primăvară este că este posibilă integrarea fără probleme cu multe opțiuni de vizualizare, cum ar fi JSP / JSTL, Tiles, FreeMaker, Excel, PDF și JSON. Dar, spre deosebire de Struts, MVC de primăvară nu oferă suport AJAX încorporat (necesitatea utilizării bibliotecii AJAX de la terți).

În cele din urmă, ambele sunt considerate cadre extrem de mature, iar alegerea dintre cele două se reduce la preferințele personale. Este important de menționat că, dacă există sentimente negative față de stâlpi, acestea se datorează doar deficiențelor care au fost găsite în versiunea 1 a lui Struts (care este acum considerată depășită).