logo

Vår MVC-handledning

En Spring MVC är ett Java-ramverk som används för att bygga webbapplikationer. Den följer Model-View-Controller designmönster. Den implementerar alla de grundläggande funktionerna i en kärnfjäderram som Inversion of Control, Dependency Injection.

En Spring MVC ger en elegant lösning att använda MVC i fjäderram med hjälp av DispatcherServlet . Här, DispatcherServlet är en klass som tar emot den inkommande begäran och mappar den till rätt resurs som kontroller, modeller och vyer.

Spring Web Model-View-Controller

Vår MVC-handledning
    Modell- En modell innehåller applikationens data. En data kan vara ett enda objekt eller en samling objekt.Kontroller- En kontroller innehåller affärslogiken för en applikation. Här används @Controller-kommentaren för att markera klassen som styrenhet.Se- En vy representerar den tillhandahållna informationen i ett visst format. I allmänhet används JSP+JSTL för att skapa en vysida. Även om våren också stöder andra vyteknologier som Apache Velocity, Thymeleaf och FreeMarker.Främre kontroll- I Spring Web MVC fungerar DispatcherServlet-klassen som frontkontroller. Det är ansvarigt för att hantera flödet av Spring MVC-applikationen.

Förstå flödet av Spring Web MVC

Vår MVC-handledning
  • Som visas i figuren fångas alla inkommande förfrågningar upp av DispatcherServlet som fungerar som frontkontroller.
  • DispatcherServlet får en post av hanterarmappning från XML-filen och vidarebefordrar förfrågan till styrenheten.
  • Styrenheten returnerar ett objekt av ModelAndView.
  • DispatcherServlet kontrollerar inmatningen av vyupplösaren i XML-filen och anropar den angivna vykomponenten.

Fördelar med Spring MVC Framework

Låt oss se några av fördelarna med Spring MVC Framework:-

    Separata roller- Spring MVC separerar varje roll, där modellobjektet, styrenheten, kommandoobjektet, vyupplösaren, DispatcherServlet, validatorn etc. kan uppfyllas av ett specialiserat objekt.Lättvikt- Den använder en lätt servletbehållare för att utveckla och distribuera din applikation.Kraftfull konfiguration- Det ger en robust konfiguration för både ramverk och applikationsklasser som inkluderar enkel referens över sammanhang, som från webbkontroller till affärsobjekt och validerare.Snabb utveckling– Spring MVC möjliggör snabb och parallell utveckling.Återanvändbar affärskod– Istället för att skapa nya objekt gör det att vi kan använda de befintliga affärsobjekten.Lätt att testa- Under våren skapar vi generellt JavaBeans-klasser som gör att du kan injicera testdata med sättermetoderna.Flexibel kartläggning- Det ger de specifika anteckningarna som enkelt omdirigerar sidan.

Spring Web MVC Framework Exempel

Låt oss se det enkla exemplet på ett Spring Web MVC-ramverk. Stegen är som följer:

  • Ladda spring jar-filerna eller lägg till beroenden när det gäller Maven
  • Skapa controllerklassen
  • Ange posten för kontrollenheten i web.xml-filen
  • Definiera bönan i den separata XML-filen
  • Visa meddelandet på JSP-sidan
  • Starta servern och distribuera projektet

Katalogstruktur för Spring MVC

Vår MVC handledning

Katalogstruktur för Spring MVC med Maven

Vår MVC-handledning

Nödvändiga Jar-filer eller Maven Dependency

För att köra det här exemplet måste du ladda:

  • Spring Core burkfiler
  • Spring Web jar-filer
  • JSP + JSTL jar-filer (Om du använder någon annan visningsteknik laddar du motsvarande jar-filer).

Nedladdningslänk: Ladda ner alla jar-filer för våren inklusive JSP och JSTL.

Om du använder Maven behöver du inte lägga till jar-filer. Nu måste du lägga till maven-beroende i filen pom.xml.

strängjämförelse java

1. Ange projektinformation och konfiguration i filen pom.xml.

pom.xml

 4.0.0 com.javatpoint SpringMVC war 0.0.1-SNAPSHOT SpringMVC Maven Webapp http://maven.apache.org junit junit 3.8.1 test org.springframework spring-webmvc 5.1.1.RELEASE javax.servlet servlet-api 3.0-alpha-1 SpringMVC 

2. Skapa controllerklassen

För att skapa kontrollerklassen använder vi två anteckningar @Controller och @RequestMapping.

@Controller-kommentaren markerar denna klass som Controller.

@Requestmapping-kommentaren används för att mappa klassen med det angivna URL-namnet.

HejController.java

 package com.javatpoint; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; @Controller public class HelloController { @RequestMapping('/') public String display() { return 'index'; } } 

3. Ange posten för kontrollenheten i web.xml-filen

I den här xml-filen specificerar vi servletklassen DispatcherServlet som fungerar som den främre styrenheten i Spring Web MVC. Alla inkommande förfrågningar om html-filen kommer att vidarebefordras till DispatcherServlet.

web.xml

 SpringMVC spring org.springframework.web.servlet.DispatcherServlet 1 spring / 

4. Definiera bönan i xml-filen

Detta är den viktiga konfigurationsfilen där vi behöver specificera View-komponenterna.

Context:component-scan-elementet definierar baspaketet där DispatcherServlet söker efter kontrollklassen.

Denna xml-fil bör finnas i WEB-INF-katalogen.

spring-servlet.xml

 

5. Visa meddelandet på JSP-sidan

Detta är den enkla JSP-sidan som visar meddelandet som returneras av styrenheten.

index.jsp

Välkommen till vårens MVC Tutorial

Produktion:

Vår MVC-handledning
Ladda ner det här exemplet (utvecklat med Eclipse)


Vårens MVC-index


Fjäder MVC

något snabbt sortering

Spring MVC Form

  • Formulärtaggbibliotek
  • Formulärtextfält
  • Form radioknapp
  • Kryssruta för formulär
  • Formulär rullgardinslista

Spring MVC-applikationer

  • Exempel på MVC CRUD
  • Exempel på MVC-paginering
  • Exempel på filuppladdning

Vår MVC-validering

  • Vår MVC-validering
  • Validering av reguljära uttryck
  • Nummervalidering
  • Anpassad validering

Fjädrande MVC-plattor

  • Fjädrande MVC-plattor