Ero jousien ja jousi-MVC:n välillä

Ero jousien ja jousi-MVC:n välillä
Ero jousien ja jousi-MVC:n välillä

Video: Ero jousien ja jousi-MVC:n välillä

Video: Ero jousien ja jousi-MVC:n välillä
Video: Prolonged FieldCare Podcast 125: Behind the Smoke - White Phosphorus Burns 2024, Marraskuu
Anonim

Struts vs Spring MVC

Struts framework on yksi ensimmäisistä verkkosovelluskehyksistä Java EE -verkkosovellusten kehittämiseen. Spring on avoimen lähdekoodin sovelluskehys. Jonkin aikaa Spring-kehyksen käyttöönoton jälkeen kehittäjät lisäsivät MVC-kehyksen Spring-kehykseen toivoen voivansa korjata joitain Strutsissa havaitsemistaan rajoituksista. Mutta muutamaa vuotta myöhemmin Struts2 (tai Struts-versio 2) saapui, ja se oli täysin erilainen ja erittäin parannettu verkkosovelluskehys. Nyt sekä Struteja että Spring MVC:tä käytetään erittäin voimakkaasti Java EE -sovellusten kehittämiseen maailmassa.

Mikä on Struts?

Struts (tunnetaan myös nimellä Apache Struts) on Java-kielellä kirjoitettu monikäyttöinen avoimen lähdekoodin kehys, joka on tarkoitettu Java EE -verkkosovellusten kehittämiseen. Tuet kannustavat käyttämään MVC-arkkitehtuuria (Model-View-Controller). Se on Java Servlet API:n laajennus. Craig McClanahan on Strutsin alkuperäinen luoja. Alun perin se tunnettiin nimellä Jakaratha Struts, ja sitä ylläpidettiin Apache Software Foundationin Jakarta Projectin alaisuudessa. Sen nykyinen vakaa julkaisu on versio 2.2.3, joka julkaistiin toukokuussa 2011. Se on julkaistu Apache License 2.0 -lisenssillä. Struts-kehystä kutsutaan pyyntöpohjaiseksi kehykseksi, ja se koostuu kolmesta pääkomponentista: pyyntökäsittelijästä, vastauskäsittelijästä ja tunnistekirjastosta. Vakio-URI (Uniform Resource Identifier) on yhdistetty pyyntökäsittelijään. Vastauskäsittelijä vastaa ohjauksen siirrosta. Vuorovaikutteisten sovellusten luomiseen lomakkeilla voidaan hyödyntää tunnistekirjaston tarjoamia ominaisuuksia. Struts tukee REST-sovelluksia ja erilaisia teknologioita, kuten SOAP, AJAX jne.

Mikä on Spring MVC?

Spring on avoimen lähdekoodin sovelluskehys. Sen on kehittänyt Rod Johnson, ja ensimmäinen versio julkaistiin vuonna 2004. Spring 3.0.5 on Spring-kehyksen nykyinen versio. Se on lisensoitu Apache 2.0 -lisenssillä. Mikä tahansa Java-sovellus voi käyttää Spring-kehyksen ydinominaisuuksia. Spring frameworkissa on useita moduuleja, ja MVC on yksi niistä. Kevään MVC-kehys ei ollut osa heidän alkuperäistä suunnitelmaansa. Itse asiassa syy siihen, miksi Spring-kehittäjät keksivät oman MVC-kehyksensä, oli tarjota ratkaisuja puutteiksi, jotka he osoittivat Strutsissa (versio 1) ja muissa vastaavissa kehyksissä. Erityisesti he sanoivat, että he halusivat puuttua eroon esityskerroksen, pyyntöjenkäsittelykerroksen ja mallin välillä. Spring MVC on myös pyyntöpohjainen verkkosovelluskehys.

Mitä eroa on Strutsilla ja Spring MVC:llä?

Vaikka Spring MVC ja Struts ovat kaksi suosittua verkkosovelluskehystä, joita käytetään Java EE -verkkosovellusten kehittämiseen, niillä on eroja. Itse asiassa Spring MVC kehitettiin käsittelemään muutamia rajoituksia Strutsissa (versio 1). Mutta Struts2 on huomattavasti paranneltu kehys kuin versio 1 (niillä ei ole edes samaa koodipohjaa), ja siksi Spring MVC ja Structs2 ovat hyvin vertailukelpoisia.

Yksi Spring MVC:n tärkeimmistä eduista on se, että on mahdollista integroida saumaton monia näkymävaihtoehtoja, kuten JSP/JSTL, Tiles, FreeMaker, Excel, PDF ja JSON. Mutta toisin kuin Struts, Spring MVC ei tarjoa sisäänrakennettua AJAX-tukea (täytyy käyttää kolmannen osapuolen AJAX-kirjastoa).

Loppujen lopuksi molempia pidetään erittäin kypsinä kehyksinä, ja valinta näiden kahden välillä riippuu henkilökohtaisista mieltymyksistä. Tässä on tärkeää huomata, että jos kielteisiä tunteita tukia kohtaan on olemassa, ne johtuvat vain puutteista, jotka löytyivät Strutsin versiosta 1 (jota pidetään nyt vanhentuneena).

Suositeltava: