logo

Spring MVC-zelfstudie

Een Spring MVC is een Java-framework waarmee webapplicaties worden gebouwd. Het volgt het Model-View-Controller-ontwerppatroon. Het implementeert alle basiskenmerken van een kernveerframework zoals Inversion of Control, Dependency Injection.

nummer om Java te stringen

Een Spring MVC biedt een elegante oplossing om MVC in een springframework te gebruiken met behulp van DispatcherServlet . Hier, DispatcherServlet is een klasse die het binnenkomende verzoek ontvangt en deze toewijst aan de juiste bron, zoals controllers, modellen en views.

Spring Web Model-View-Controller

Spring MVC-zelfstudie
    Model- Een model bevat de gegevens van de applicatie. Gegevens kunnen een enkel object of een verzameling objecten zijn.Controleur- Een controller bevat de bedrijfslogica van een applicatie. Hier wordt de @Controller-annotatie gebruikt om de klasse als controller te markeren.Weergave- Een weergave vertegenwoordigt de verstrekte informatie in een bepaald formaat. Over het algemeen wordt JSP+JSTL gebruikt om een ​​weergavepagina te maken. Al ondersteunt Spring ook andere weergavetechnologieën zoals Apache Velocity, Thymeleaf en FreeMarker.Voorste regelaar- In Spring Web MVC werkt de klasse DispatcherServlet als de frontcontroller. Het is verantwoordelijk voor het beheer van de stroom van de Spring MVC-applicatie.

Inzicht in de stroom van Spring Web MVC

Spring MVC-zelfstudie
  • Zoals weergegeven in de afbeelding, worden alle binnenkomende verzoeken onderschept door de DispatcherServlet die als frontcontroller werkt.
  • De DispatcherServlet haalt een invoer van handlertoewijzing op uit het XML-bestand en stuurt het verzoek door naar de controller.
  • De controller retourneert een object van ModelAndView.
  • De DispatcherServlet controleert de invoer van de view-resolver in het XML-bestand en roept de opgegeven view-component aan.

Voordelen van Spring MVC Framework

Laten we enkele voordelen van Spring MVC Framework bekijken: -

    Aparte rollen- De Spring MVC scheidt elke rol, waarbij het modelobject, de controller, het commandoobject, de weergaveresolver, DispatcherServlet, validator, enz. kunnen worden vervuld door een gespecialiseerd object.Lichtgewicht- Het maakt gebruik van een lichtgewicht servletcontainer om uw applicatie te ontwikkelen en te implementeren.Krachtige configuratie- Het biedt een robuuste configuratie voor zowel framework- als applicatieklassen, met gemakkelijke verwijzingen tussen contexten, zoals van webcontrollers tot bedrijfsobjecten en validators.Snelle ontwikkeling- De Spring MVC faciliteert snelle en parallelle ontwikkeling.Herbruikbare bedrijfscode- In plaats van nieuwe objecten te creëren, kunnen we de bestaande bedrijfsobjecten gebruiken.Makkelijk te testen- In het voorjaar maken we over het algemeen JavaBeans-klassen waarmee u testgegevens kunt injecteren met behulp van de setter-methoden.Flexibele mapping- Het biedt de specifieke annotaties die de pagina gemakkelijk kunnen omleiden.

Spring Web MVC Framework-voorbeeld

Laten we het eenvoudige voorbeeld van een Spring Web MVC-framework bekijken. De stappen zijn als volgt:

  • Laad de spring jar-bestanden of voeg afhankelijkheden toe in het geval van Maven
  • Maak de controllerklasse
  • Geef de vermelding van controller op in het bestand web.xml
  • Definieer de bean in het afzonderlijke XML-bestand
  • Geef het bericht weer op de JSP-pagina
  • Start de server en implementeer het project

Directorystructuur van Spring MVC

Spring MVC-zelfstudie

Directorystructuur van Spring MVC met Maven

Spring MVC-zelfstudie

Vereiste Jar-bestanden of Maven-afhankelijkheid

Om dit voorbeeld uit te voeren, moet u het volgende laden:

  • Spring Core jar-bestanden
  • Spring Web jar-bestanden
  • JSP + JSTL jar-bestanden (als u een andere weergavetechnologie gebruikt, laad dan de overeenkomstige jar-bestanden).

Download link: Download alle jar-bestanden voor de lente, inclusief JSP en JSTL.

Als u Maven gebruikt, hoeft u geen jar-bestanden toe te voegen. Nu moet u maven-afhankelijkheid toevoegen aan het pom.xml-bestand.

1. Geef projectinformatie en configuratie op in het pom.xml-bestand.

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. Maak de controllerklasse

Om de controllerklasse te maken, gebruiken we twee annotaties @Controller en @RequestMapping.

De annotatie @Controller markeert deze klasse als Controller.

De annotatie @Requestmapping wordt gebruikt om de klasse toe te wijzen met de opgegeven URL-naam.

HalloController.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. Geef de vermelding van controller op in het web.xml-bestand

In dit xml-bestand specificeren we de servletklasse DispatcherServlet die fungeert als de frontcontroller in Spring Web MVC. Alle binnenkomende verzoeken om het HTML-bestand worden doorgestuurd naar de DispatcherServlet.

web.xml

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

4. Definieer de bean in het XML-bestand

Dit is het belangrijke configuratiebestand waarin we de View-componenten moeten specificeren.

Het context:component-scan element definieert het basispakket waar DispatcherServlet de controllerklasse zal doorzoeken.

Dit xml-bestand moet zich in de WEB-INF-map bevinden.

spring-servlet.xml

vba
 

5. Geef het bericht weer op de JSP-pagina

Dit is de eenvoudige JSP-pagina, waarop het bericht wordt weergegeven dat door de controller is geretourneerd.

index.jsp

Welkom bij de Spring MVC-zelfstudie

Uitgang:

Spring MVC-zelfstudie
Download dit voorbeeld (ontwikkeld met Eclipse)


Lente MVC-index


Lente MVC

Spring MVC-formulier

  • Formuliertagbibliotheek
  • Formuliertekstveld
  • Keuzerondje formulier
  • Formulier selectievakje
  • Formulier vervolgkeuzelijst

Lente MVC-toepassingen

  • MVC CRUD-voorbeeld
  • Voorbeeld van MVC-paging
  • Voorbeeld van bestandsupload

Lente MVC-validatie

  • Lente MVC-validatie
  • Validatie van reguliere expressies
  • Nummervalidatie
  • Aangepaste validatie

Lente MVC-tegels

  • Lente MVC-tegels