Un MVC primavera è un framework Java che viene utilizzato per costruire applicazioni web. Segue il modello di progettazione Model-View-Controller. Implementa tutte le funzionalità di base di un framework spring core come l’inversione del controllo, l’iniezione di dipendenza.

A Spring MVC fornisce una soluzione elegante per utilizzare MVC in spring framework con l’aiuto di DispatcherServlet. Qui, DispatcherServlet è una classe che riceve la richiesta in arrivo e la mappa alla risorsa giusta come controller, modelli e viste.,

Spring Web Model-View-Controller

  • Model – Un modello contiene i dati dell’applicazione. Un dato può essere un singolo oggetto o una raccolta di oggetti.
  • Controller-Un controller contiene la logica di business di un’applicazione. Qui, l’annotazione @Controller viene utilizzata per contrassegnare la classe come controller.
  • View-Una vista rappresenta le informazioni fornite in un particolare formato. Generalmente, JSP + JSTL viene utilizzato per creare una pagina di visualizzazione. Anche se spring supporta anche altre tecnologie di visualizzazione come Apache Velocity, Thymeleaf e FreeMarker.,
  • Front Controller – In Spring Web MVC, la classe DispatcherServlet funziona come front controller. È responsabile della gestione del flusso dell’applicazione Spring MVC.

Comprendere il flusso di Spring Web MVC

  • Come mostrato in figura, tutta la richiesta in arrivo viene intercettata dal DispatcherServlet che funge da front controller.
  • Il DispatcherServlet ottiene una voce di mappatura del gestore dal file XML e inoltra la richiesta al controller.
  • Il controller restituisce un oggetto di ModelAndView.,
  • Il DispatcherServlet controlla la voce del risolutore di vista nel file XML e richiama il componente di vista specificato.

Vantaggi di Spring MVC Framework

Vediamo alcuni dei vantaggi di Spring MVC Framework: –

  • Ruoli separati-Spring MVC separa ogni ruolo, dove l’oggetto modello, controller, oggetto comando, view resolver, DispatcherServlet, validator, ecc. può essere soddisfatto da un oggetto specializzato.
  • Leggero-Usa il contenitore leggero del servlet per sviluppare e distribuire la vostra applicazione.,
  • Configurazione potente-Fornisce una configurazione robusta per entrambe le classi di framework e applicazioni che include un facile riferimento tra i contesti, ad esempio dai controller Web agli oggetti di business e ai validatori.
  • Sviluppo rapido-La molla MVC facilita lo sviluppo veloce e parallelo.
  • Codice aziendale riutilizzabile-Invece di creare nuovi oggetti, ci consente di utilizzare gli oggetti aziendali esistenti.
  • Facile da testare-In primavera, generalmente creiamo classi JavaBeans che consentono di iniettare dati di test utilizzando i metodi setter.,
  • Mappatura flessibile-Fornisce le annotazioni specifiche che reindirizzano facilmente la pagina.

Spring Web MVC Framework Example

Vediamo il semplice esempio di un framework Spring Web MVC. I passaggi sono i seguenti:

  • Caricare i file spring jar o aggiungere dipendenze nel caso di Maven
  • Creare la classe controller
  • Fornire l’ingresso del controller nel web.,file xml
  • Definire il fagiolo nel file XML separato
  • Visualizzare il messaggio in pagina JSP
  • Avviare il server e distribuire il progetto

Struttura di Directory di Spring MVC

Struttura di Directory di Spring MVC utilizzando Maven

i file Jar Necessari o Maven Dipendenza

Per eseguire questo esempio, è necessario caricare:

  • Primavera Core file jar
  • Spring Web i file jar
  • JSP + JSTL file jar (Se si utilizza qualsiasi altro punto di vista, la tecnologia quindi caricare il corrispondente file jar).,

Link per il download: Scarica tutti i file jar per spring, inclusi JSP e JSTL.

Se si utilizza Maven, non è necessario aggiungere file jar. Ora, è necessario aggiungere la dipendenza maven al pom.file xml.

Fornire informazioni sul progetto e la configurazione nel pom.file xml.

pom.xml

Crea la classe controller

Per creare la classe controller, stiamo usando due annotazioni @Controller e @RequestMapping.

L’annotazione @Controller contrassegna questa classe come Controller.,

L’annotazione @Requestmapping viene utilizzata per mappare la classe con il nome URL specificato.

HelloController.java

Fornisce l’ingresso del controller nel web.file xml

In questo file xml, stiamo specificando la classe servlet DispatcherServlet che funge da controller frontale in Spring Web MVC. Tutte le richieste in arrivo per il file html verranno inoltrate al DispatcherServlet.

web.xml

Definire il bean nel file xml

Questo è il file di configurazione importante in cui dobbiamo specificare i componenti della Vista.,

L’elemento context:component-scan definisce il pacchetto di base in cui DispatcherServlet cercherà la classe del controller.

Questo file xml dovrebbe trovarsi all’interno della directory WEB-INF.

molla-servlet.xml

Visualizza il messaggio nella pagina JSP

Questa è la semplice pagina JSP, che visualizza il messaggio restituito dal Controller.

indice.jsp