Qual è il migliore: Spring MVC o Struts?


Migliore risposta

Attualmente nello stack di tecnologia java, Spring MVC è in cima e viene ampiamente utilizzato per creare applicazioni Java Enterprise.

Spring MVC è molto richiesto e aggiornato. Di tanto in tanto rilasciano nuove versioni di Spring. La sicurezza primaverile è uno dei modi migliori per proteggere unapplicazione. Struts è antico. Ma esiste ancora poiché la maggior parte delle applicazioni legacy sono state create utilizzando. Ma quasi nessuno sviluppatore sceglierebbe Struts per creare unapplicazione oggi.

La tua richiesta può essere facilmente soddisfatta utilizzando: -Spring MVC: per REST api, modello client server, Service Oriented Architecure (SOA). -Spring Security: per proteggere la tua applicazione. -Hibernate o Spring JDBC Template. (vai con Hibernate): per la gestione del database -MySQL per il database. -JUnit per unit test.

Risposta

Il framework Spring è costituito da una serie di moduli, uno dei quali è MVC Model View Controller sotto dominio Web.

Considera il seguente vista dallalto dei moduli Spring.

MVC: Puoi vedere che il modulo Web è indicato come MVC./Remoting. Questo modulo è composto da tutto il codice della piastra caldaia necessario per sviluppare applicazioni web. Ciò include la gestione di richieste, metodi HTTP, mapping URL, risolutori di visualizzazione, librerie di tag JSP, sessioni. Fare riferimento a 22. Framework Web MVC per maggiori dettagli.

IOC – Inversion of Control: “Non chiamarci, ti chiameremo noi”

Ecco che arriva la parte difficile. Come puoi vedere, IOC non fa parte del diagramma del modulo sopra. IOC fa parte del modulo Spring Core insieme a molte altre cose.

IOC è al di sopra e al di là di Spring. È un principio di progettazione orientato agli oggetti che riduce la dipendenza e aumenta la modularità e rende il programma estensibile.

Come dice Martin Fowler, linversione del controllo è il principio in cui il flusso di controllo di un programma viene invertito: invece del controllo del programmatore il flusso di un programma, le sorgenti esterne (framework, servizi, altri componenti) ne prendono il controllo.

IOC risolve i seguenti problemi di progettazione.

  • Per disaccoppiare lesecuzione di unattività dallimplementazione.
  • Per concentrare un modulo sullattività per cui è progettato.
  • Per liberare i moduli da supposizioni su come altri sistemi fanno ciò che fanno e invece si affidano a c ontracts.
  • Per evitare effetti collaterali durante la sostituzione di un modulo.

Venendo a ciò che è primavera IOC.

Spring IOC è il modo per implementare IOC in primavera. Il CIO può essere ottenuto in più modi. La documentazione dice:

È un processo in base al quale gli oggetti definiscono le loro dipendenze, ovvero gli altri oggetti con cui lavorano, solo tramite argomenti del costruttore, argomenti di un metodo factory o proprietà impostate sullistanza delloggetto dopo che è stato costruito o restituito da un metodo di fabbrica. Il contenitore quindi inietta quelle dipendenze quando crea il bean. Questo processo è fondamentalmente linverso, da cui il nome Inversion of Control (IoC), del bean stesso che controlla listanza o la posizione delle sue dipendenze utilizzando la costruzione diretta classi o un meccanismo come il modello Service Locator .

In primavera org.springframework.beans e org.springframework.context contiene limplementazione di IOC chiamato Spring IOC Container. Linterfaccia org.springframework.context.ApplicationContext rappresenta il contenitore Spring IoC ed è responsabile della creazione di istanze, configurazione e assemblaggio degli oggetti (in Spring gli oggetti sono Beans).

Leggere 7. Il contenitore IoC e BeanFactory (Spring Framework 4.3.7.RELEASE API) per i dettagli completi.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *