logo

Spring MVC-Tutorial

Ein Spring MVC ist ein Java-Framework, das zum Erstellen von Webanwendungen verwendet wird. Es folgt dem Model-View-Controller-Entwurfsmuster. Es implementiert alle Grundfunktionen eines Kern-Feder-Frameworks wie Inversion of Control und Dependency Injection.

Ein Spring MVC bietet eine elegante Lösung für die Verwendung von MVC im Spring Framework mithilfe von DispatcherServlet . Hier, DispatcherServlet ist eine Klasse, die die eingehende Anfrage empfängt und sie der richtigen Ressource wie Controllern, Modellen und Ansichten zuordnet.

Spring Web Model-View-Controller

Spring MVC-Tutorial
    Modell- Ein Modell enthält die Daten der Anwendung. Bei Daten kann es sich um ein einzelnes Objekt oder eine Sammlung von Objekten handeln.Regler- Ein Controller enthält die Geschäftslogik einer Anwendung. Hier wird die Annotation @Controller verwendet, um die Klasse als Controller zu markieren.Sicht- Eine Ansicht stellt die bereitgestellten Informationen in einem bestimmten Format dar. Im Allgemeinen wird JSP+JSTL zum Erstellen einer Ansichtsseite verwendet. Obwohl Spring auch andere Ansichtstechnologien wie Apache Velocity, Thymeleaf und FreeMarker unterstützt.Front-Controller– In Spring Web MVC fungiert die DispatcherServlet-Klasse als Front-Controller. Es ist für die Verwaltung des Ablaufs der Spring MVC-Anwendung verantwortlich.

Den Ablauf von Spring Web MVC verstehen

Spring MVC-Tutorial
  • Wie in der Abbildung dargestellt, werden alle eingehenden Anforderungen vom DispatcherServlet abgefangen, das als Front-Controller fungiert.
  • Das DispatcherServlet ruft einen Eintrag der Handlerzuordnung aus der XML-Datei ab und leitet die Anfrage an den Controller weiter.
  • Der Controller gibt ein Objekt von ModelAndView zurück.
  • Das DispatcherServlet prüft den Eintrag des View Resolvers in der XML-Datei und ruft die angegebene View-Komponente auf.

Vorteile des Spring MVC Frameworks

Sehen wir uns einige der Vorteile des Spring MVC Framework an:-

    Getrennte Rollen- Die Spring MVC trennt jede Rolle, wobei das Modellobjekt, der Controller, das Befehlsobjekt, der View Resolver, das DispatcherServlet, der Validator usw. von einem spezialisierten Objekt erfüllt werden können.Leicht- Es verwendet einen leichten Servlet-Container, um Ihre Anwendung zu entwickeln und bereitzustellen.Leistungsstarke Konfiguration– Es bietet eine robuste Konfiguration sowohl für Framework- als auch für Anwendungsklassen, die eine einfache kontextübergreifende Referenzierung ermöglicht, beispielsweise von Web-Controllern bis hin zu Geschäftsobjekten und Validatoren.Schnelle Entwicklung- Der Spring MVC ermöglicht eine schnelle und parallele Entwicklung.Wiederverwendbarer Geschäftscode- Anstatt neue Objekte zu erstellen, können wir die vorhandenen Geschäftsobjekte verwenden.Einfach zu testen- Im Frühjahr erstellen wir im Allgemeinen JavaBeans-Klassen, die es Ihnen ermöglichen, Testdaten mithilfe der Setter-Methoden einzufügen.Flexible Zuordnung- Es stellt die spezifischen Anmerkungen bereit, die die Seite einfach umleiten.

Beispiel für ein Spring Web MVC Framework

Sehen wir uns das einfache Beispiel eines Spring Web MVC-Frameworks an. Die Schritte sind wie folgt:

  • Laden Sie die Spring-JAR-Dateien oder fügen Sie im Fall von Maven Abhängigkeiten hinzu
  • Erstellen Sie die Controller-Klasse
  • Geben Sie den Eintrag des Controllers in der Datei web.xml an
  • Definieren Sie die Bean in der separaten XML-Datei
  • Zeigen Sie die Nachricht auf der JSP-Seite an
  • Starten Sie den Server und stellen Sie das Projekt bereit

Verzeichnisstruktur von Spring MVC

Spring MVC-Tutorial

Verzeichnisstruktur von Spring MVC mit Maven

Spring MVC-Tutorial

Erforderliche Jar-Dateien oder Maven-Abhängigkeit

Um dieses Beispiel auszuführen, müssen Sie Folgendes laden:

  • Spring Core-JAR-Dateien
  • Spring Web-JAR-Dateien
  • JSP + JSTL-JAR-Dateien (Wenn Sie eine andere Ansichtstechnologie verwenden, laden Sie die entsprechenden JAR-Dateien).

Download-Link: Laden Sie alle JAR-Dateien für Spring herunter, einschließlich JSP und JSTL.

Wenn Sie Maven verwenden, müssen Sie keine JAR-Dateien hinzufügen. Jetzt müssen Sie der Datei pom.xml eine Maven-Abhängigkeit hinzufügen.

1. Geben Sie Projektinformationen und Konfiguration in der Datei pom.xml an.

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. Erstellen Sie die Controller-Klasse

Um die Controller-Klasse zu erstellen, verwenden wir zwei Annotationen @Controller und @RequestMapping.

Die Annotation @Controller markiert diese Klasse als Controller.

Die Annotation @Requestmapping wird verwendet, um die Klasse dem angegebenen URL-Namen zuzuordnen.

HelloController.java

Zeichenfolge 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. Geben Sie den Eintrag des Controllers in der Datei web.xml an

In dieser XML-Datei geben wir die Servlet-Klasse DispatcherServlet an, die als Front-Controller in Spring Web MVC fungiert. Alle eingehenden Anforderungen für die HTML-Datei werden an das DispatcherServlet weitergeleitet.

web.xml

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

4. Definieren Sie die Bean in der XML-Datei

Dies ist die wichtige Konfigurationsdatei, in der wir die View-Komponenten angeben müssen.

Das context:component-scan-Element definiert das Basispaket, in dem DispatcherServlet die Controller-Klasse durchsucht.

Diese XML-Datei sollte sich im WEB-INF-Verzeichnis befinden.

spring-servlet.xml

 

5. Zeigen Sie die Nachricht auf der JSP-Seite an

Dies ist die einfache JSP-Seite, auf der die vom Controller zurückgegebene Nachricht angezeigt wird.

index.jsp

Willkommen beim Spring MVC-Tutorial

Ausgabe:

Spring MVC-Tutorial
Laden Sie dieses Beispiel herunter (entwickelt mit Eclipse)


Spring MVC-Index


Frühlings-MVC

Spring MVC-Formular

  • Formular-Tag-Bibliothek
  • Formulartextfeld
  • Optionsfeld „Formular“.
  • Formular-Kontrollkästchen
  • Formular-Dropdown-Liste

Spring MVC-Anwendungen

  • MVC CRUD-Beispiel
  • Beispiel für eine MVC-Paginierung
  • Beispiel für einen Datei-Upload

Spring MVC-Validierung

  • Spring MVC-Validierung
  • Validierung regulärer Ausdrücke
  • Nummernvalidierung
  • Benutzerdefinierte Validierung

Frühlings-MVC-Kacheln

  • Frühlings-MVC-Kacheln