Welcome to Our Website

Spring – MVC Framework

<

Das Spring Web MVC Framework bietet Model-View-Controller (MVC) Architektur und fertige Komponenten, mit denen flexible und lose gekoppelte Webanwendungen entwickelt werden können. Das MVC-Muster führt dazu, dass die verschiedenen Aspekte der Anwendung (Eingabelogik, Geschäftslogik und UI-Logik) getrennt werden, während eine lose Kopplung zwischen diesen Elementen bereitgestellt wird.,

  • Das Modell kapselt die Anwendungsdaten und besteht im Allgemeinen aus POJO.

  • Die Ansicht ist für das Rendern der Modelldaten verantwortlich und generiert im Allgemeinen HTML-Ausgaben, die der Browser des Clients interpretieren kann.

  • Der Controller ist für die Verarbeitung von Benutzeranforderungen und die Erstellung eines geeigneten Modells verantwortlich und übergibt es zum Rendern an die Ansicht.

Das DispatcherServlet

Das Spring Web Model-View-Controller (MVC) Framework basiert auf einem DispatcherServlet, das alle HTTP-Anforderungen und-Antworten verarbeitet., Der Anforderungsverarbeitungsworkflow des Spring Web MVC DispatcherServlet ist im folgenden Diagramm dargestellt –

Im Folgenden wird die Abfolge von Ereignissen angezeigt, die einer eingehenden HTTP-Anforderung an DispatcherServlet entsprechen –

  • Nach Erhalt einer HTTP-Anforderung konsultiert DispatcherServlet die HandlerMapping, um den entsprechenden Controller aufzurufen.

  • Der Controller übernimmt die Anforderung und ruft die entsprechenden Servicemethoden basierend auf der verwendeten GET-oder POST-Methode auf., Die Dienstmethode legt Modelldaten basierend auf der definierten Geschäftslogik fest und gibt den Ansichtsnamen an das DispatcherServlet zurück.

  • Das DispatcherServlet benötigt Hilfe von ViewResolver, um die definierte Ansicht für die Anforderung abzuholen.

  • Sobald die Ansicht abgeschlossen ist, übergibt das DispatcherServlet die Modelldaten an die Ansicht, die schließlich im Browser gerendert wird.

Alle oben genannten Komponenten, d.h., HandlerMapping, Controller und ViewResolver sind Teile von WebApplicationContext w, einer Erweiterung des plainApplicationContext mit einigen zusätzlichen Funktionen, die für Webanwendungen erforderlich sind.

Erforderliche Konfiguration

Sie müssen Anforderungen zuordnen, die das DispatcherServlet verarbeiten soll, indem Sie eine URL-Zuordnung im Web verwenden.xml-Datei. Das folgende Beispiel zeigt die Deklaration und Zuordnung für HelloWeb DispatcherServlet example −

The web.die XML-Datei wird im Verzeichnis WebContent/WEB-INF Ihrer Webanwendung gespeichert., Bei der Initialisierung von HelloWeb DispatcherServlet versucht das Framework, den Anwendungskontext aus einer Datei namens-servlet zu laden.xml befindet sich im WebContent/WEB-INFdirectory der Anwendung. In diesem Fall ist unsere Datei HelloWebservlet.XML.

Als nächstes <Servlet-mapping> Tag gibt an, welche URLs von welchem DispatcherServlet behandelt werden. Hier enden alle HTTP-Anfragen mit .jsp wird vom HelloWeb DispatcherServlet behandelt.

Wenn Sie den Standarddateinamen nicht als-servlet verwenden möchten.,xml und Standardspeicherort Als WebContent / WEB-INF können Sie diesen Dateinamen und Speicherort anpassen, indem Sie den Servlet-Listener ContextLoaderListener in Ihrem Web hinzufügen.xml-Datei wie folgt –

Lassen Sie uns nun die erforderliche Konfiguration für HelloWeb-Servlet überprüfen.xml-Datei, in Ihrer Web-Anwendung WebContent/WEB-INF Verzeichnis platziert –

Im Folgenden sind die wichtigen Punkte über HelloWeb-Servlet.xml-Datei −

  • – servlet.die XML-Datei wird zum Erstellen der definierten Beans verwendet und überschreibt die Definitionen aller Beans, die im globalen Bereich mit demselben Namen definiert sind.,

  • Die <Kontext:Komponente-scan…> Das Tag wird verwendet, um die Funktion zum Scannen von Spring MVC-Anmerkungen zu aktivieren, mit der Anmerkungen wie @Controller und @RequestMapping usw. verwendet werden können.

  • Für den InternalResourceViewResolver sind Regeln zum Auflösen der Ansichtsnamen definiert. Gemäß der oben definierten Regel wird eine logische Ansicht mit dem Namen hello an eine Ansichtsimplementierung delegiert, die sich unter /WEB-INF/jsp / hello befindet.jsp .

Der folgende Abschnitt zeigt Ihnen, wie Sie Ihre eigentlichen Komponenten erstellen, d.h.,, Controller, Modell und Ansicht.

Definieren eines Controllers

Das DispatcherServlet delegiert die Anforderung an die Controller, um die dafür spezifische Funktionalität auszuführen. Die @Controllerannotation gibt an, dass eine bestimmte Klasse die Rolle eines Controllers übernimmt. Die Annotation @RequestMapping wird verwendet, um eine URL entweder einer ganzen Klasse oder einer bestimmten Handlermethode zuzuordnen.

Die @Controller-annotation definiert die Klasse als Spring MVC-controller. Hier zeigt die erste Verwendung von @RequestMapping an, dass alle Bearbeitungsmethoden auf diesem Controller relativ zum Pfad /hello sind., Nächste Anmerkung@RequestMapping (method = RequestMethod.GET) wird verwendet, um die Methode printhello () als Standarddienstmethode des Controllers für die HTTP-GET-Anforderung zu deklarieren. Sie können eine andere Methode definieren, um jede POST-Anforderung unter derselben URL zu verarbeiten.

Sie können den obigen Controller in eine andere Form schreiben, in der Sie zusätzliche Attribute in @RequestMapping wie folgt hinzufügen können –

Das value Attribut gibt die URL an, der die Handler-Methode zugeordnet ist, und das Methodenattribut definiert die Service-Methode zur Behandlung der HTTP-GET-Anforderung., Die folgenden wichtigen Punkte sind über den oben definierten Controller zu beachten:

  • Sie definieren die erforderliche Geschäftslogik in einer Servicemethode. Sie können eine andere Methode innerhalb dieser Methode gemäß Anforderung aufrufen.

  • Basierend auf der definierten Geschäftslogik erstellen Sie ein Modell innerhalb dieser Methode. Sie können Setter verschiedene Modellattribute verwenden und auf diese Attribute wird in der Ansicht zugegriffen, um das Endergebnis darzustellen. In diesem Beispiel wird ein Modell mit dem Attribut „message“erstellt.,

  • Eine definierte Dienstmethode kann eine Zeichenfolge zurückgeben, die den Namen der Ansicht enthält, die zum Rendern des Modells verwendet werden soll. Dieses Beispiel gibt „Hallo“ als logischen Ansichtsnamen zurück.

Erstellen von JSP-Ansichten

Spring MVC unterstützt viele Arten von Ansichten für verschiedene Präsentationstechniken. Dazu gehören-JSPs, HTML, PDF, Excel-Arbeitsblätter, XML, Velocity-Vorlagen, XSLT, JSON, Atom-und RSS-Feeds, JasperReports usw. Am häufigsten verwenden wir jedoch JSP-Vorlagen, die mit JSTL geschrieben wurden.

Lassen Sie uns eine einfache Hallo-Ansicht in /WEB-INF/hello/hello schreiben.,jsp –

<html> <head> <title>Hello Spring MVC</title> </head> <body> <h2>${message}</h2> </body></html>

Hier ist ${message} das Attribut, das wir im Controller eingerichtet haben. Sie können mehrere Attribute in Ihrer Ansicht anzeigen lassen.

Spring Web MVC Framework Beispiele

Lassen Sie uns anhand der oben genannten Konzepte einige wichtige Beispiele überprüfen, die Ihnen beim Erstellen Ihrer Spring Web-Anwendungen helfen −

Sr.No., Beispiel & Beschreibung
1 Spring MVC Hello World Example

In diesem Beispiel wird erklärt, wie eine einfache Spring Web Hello World-Anwendung geschrieben wird.

2 Spring MVC Form Handling Example

In diesem Beispiel wird erläutert,wie eine Spring-Webanwendung mit HTML-Formularen geschrieben wird, um die Daten an den Controller zu senden und ein verarbeitetes Ergebnis anzuzeigen.

3 Spring Page Redirection Beispiel

Erfahren Sie, wie Sie die Seitenumleitungsfunktionalität im Spring MVC Framework verwenden.,

4 Spring Static Pages Example

Learn how to access static pages along with dynamic pages in Spring MVC Framework.

5 Spring Exception Handling Example

Learn how to handle exceptions in Spring MVC Framework.

Advertisements

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.