Was können Sie nach der Lektüre dieses Blogs lernen?
Verstehen Sie, was Spring Web MVC ist
So lernen Sie Spring MVC
Verstehen Sie gängige Spring Web MVC-Anmerkungen
Text
Was ist Spring Web MVC?
Aus dem Titel können wir ein sehr unbekanntes Substantiv erkennen.Spring Web MVC", dieser Begriff klingt sehr hochtrabend, aber was genau ist das? Dies ist die Erklärung aus dem offiziellen Dokument: Spring Web MVC ist das ursprüngliche Web-Framework, das auf der Servlet-API basiert und von Anfang an im Spring-Framework enthalten war. Der offizielle Name „Spring Web MVC“ leitet sich vom Namen seines Quellmoduls (Spring-webmvc) ab, wird jedoch häufig als SpringMVC bezeichnet
Es spielt keine Rolle, wenn Sie es nicht verstehen. In menschlichen Begriffen ist dies:Spring Web MVC ist ein Web-Framework Um Spring MVC wirklich zu verstehen, müssen wir jedoch verstehen, was MVC ist. Tatsächlich ist MVC die Abkürzung für Model View Controller. Es ist ein Software-Architektur-Designmuster ., Ansicht und Steuerung drei grundlegende Teile, wie in der Abbildung unten gezeigt Sie können nach den Definitionen dieser Teile fragen: • Ansicht (Ansicht) bezieht sich auf die Ressource, die für die Interaktion mit dem Browser und die Anzeige von Daten in der Anwendung vorgesehen ist. • Das Modell ist der Hauptteil der Anwendung und wird zur Verarbeitung der Datenlogik im Programm verwendet. • Controller kann als Dispatcher verstanden werden, der verwendet wird, um zu entscheiden, welches Modell zur Verarbeitung von Anforderungen aus der Ansicht verwendet werden muss und zu welcher Ansicht nach der Verarbeitung zurückgesprungen werden muss.Sofort einsatzbereit zum Verbinden von Ansichten und Modellen
Der Hauptprozess ist: View sendet eine Anfrage an Controller. Zu diesem Zeitpunkt wird innerhalb des Controllers eine Auswahl getroffen, um zu sehen, welche Lösung (Lösungsmodell) die Anfrage lösen kann. Nach der Auswahl wird eine Anweisung an Model gesendet, um diejenige auszuwählen, die bearbeitet wird Nachdem das Modell verarbeitet wurde, gibt das Modell zuerst die Verarbeitungsergebnisse an den Controller zurück und dann gibt der Controller die Ergebnisse an die Ansicht zurück. Dies ist das Hauptgerüst von MVC und eine Idee zur Lösung von Problemen.
Zum Beispiel zum Essen in ein Restaurant gehen Nachdem der Kunde das Geschäft betreten hat, kommt der Kellner, um die Bestellung des Kunden entgegenzunehmen. Nachdem der Kunde das Essen bestellt hat, übergibt er die Speisekarte des Kunden an die Rezeption, und die Rezeption gibt auf der Grundlage der Speisekarte des Kunden Bestellungen aus ist für das Kochen verantwortlich. Danach teilen Sie dem Kellner laut Speisekarte mit, dass dies das Essen für den Gast an Tisch X ist. Während dieses Prozesses Der Kellner ist View, der dafür verantwortlich ist, Kunden zu empfangen, ihnen bei der Essensbestellung zu helfen und ihnen Essen zu servieren. Das Frontoffice ist der Controller, der basierend auf der Bestellsituation des Benutzers auswählt, an welchen Koch er seine Bestellungen erteilt. Die hintere Küche ist das Modell, das die Essensbedürfnisse des Kunden entsprechend den Anforderungen des vorderen Büros erfüllt.
Zusammenfassend lässt sich sagen: MVC ist ein architektonisches Entwurfsmuster und eine Idee, und Spring MVC ist eine spezifische Implementierung der MVC-Idee. Darüber hinaus ist Spring MVC auch ein Web-Framework. Zusammenfassend ist Spring MVC ein Web-Framework, das das MVC-Muster implementiert Da es sich bei SpringBoot um eine spezifische Implementierung von SpringMVC handelt, handelt es sich bei den von uns erstellten Projekten im Allgemeinen um SpringBoot. Dies erklärt auch, warum das von einigen Studenten erstellte Projekt SpringBoot ist. Spring Boot kann viele Abhängigkeiten hinzufügen und diese Abhängigkeiten verwenden, um verschiedene Funktionen zu implementieren, indem es das Spring WebMVC-Framework hinzufügt.
Zum Beispiel: Die Küche kann zum Kochen genutzt werden, aber die eigentliche Kochfunktion ist das Feuer und verschiedene Kochmaterialien und -geräte. Die Küche kann mit Schränken ausgestattet werden, um die Aufbewahrungsfunktion und die Dekoration zu realisieren Vor Tausenden von Jahren konnte Kochen mit Feuer und Essen realisiert werden. Als Spring jedoch auch die Eigenschaften seiner eigenen Projekte kombinierte.
Basierend auf dem obigen Beispiel der Essensbestellung besteht die wichtigste Änderung darin, dass wir das Restaurant direkt betreten und Essen direkt an der Rezeption bestellen können, anstatt indirekt den Kellner zu rufen, der vorbeikommt und Essen bestellt.
Wie lerne ich Spring MVC?
Nachdem wir kurz verstanden haben, was Spring MVC ist, können wir ein vorläufiges Verständnis dafür entwickeln, wie man Spring MVC lernt. Wenn wir Spring MVC lernen, liegt der Schwerpunkt darauf, zu lernen, wie man über den Browser mit Benutzerprogrammen interagiert. Hauptsächlich in die folgenden drei Aspekte unterteilt:
Stellen Sie eine Verbindung her: Verbinden Sie den Benutzer (Browser) und das Java-Programm. Wenn Sie also auf eine Adresse zugreifen, können Sie unser Spring-Programm aufrufen.
Anfrage: Der Benutzer bringt einige Parameter mit, wenn er eine Anfrage stellt. Im Programm muss eine Möglichkeit gefunden werden, die Parameter abzurufen. Daher ist der Anfrageteil hauptsächlich eine Funktion zum Abrufen von Parametern.
Antwort: Nach der Ausführung der Geschäftslogik muss das Ergebnis der Programmausführung als Antwort an den Benutzer zurückgegeben werden.
Allgemeine Spring Web MVC-Anmerkungen
Was wir zuerst lernen, ist die Verbindung: und Spring MVC-Annotationen sind ein wichtiger Teil der Verbindung. Daher ist die Reihenfolge des Rahmens meines Blogs eng miteinander verbunden. Die Hauptthemen können ihre Hauptthemen unterscheiden, aber die Hauptthemen sind immer noch eng miteinander verbunden. Kommen wir zum Punkt, kein Scherz mehr.
1. Verwenden Sie @RequestMapping in Spring MVC, um die URL-Routing-Zuordnung zu implementieren. Dies ist die Rolle des Browser-Verbindungsprogramms. Schauen wir uns zunächst an, wie der Code geschrieben wird. Nachdem wir es ausgeführt haben, geben Sie die URL http://127.0.0.1:8080/hello in den Browser ein Sie können den Effekt sehen. Warum diese Website in Ordnung ist, müssen Sie jetzt nicht verstehen, aber Sie werden es in Zukunft mit der Vertiefung Ihres Studiums auf jeden Fall verstehen. Der Effekt ist wie
Hinweis: Wir können sehen, dass ich die Datei im Verzeichnis src/main/java/com.example.j20240711 erstellt habe. Eine verbreitete Angewohnheit ist, dass wir normalen Geschäftscode in src schreiben und Code in Text testen. Da ich die professionelle Version von IDEA2022.3.3 verwende, unterscheiden sich einige Seiten möglicherweise von Ihren, aber der allgemeine Rahmen ist derselbe. Tatsächlich können wir Spring auch mit der Standardversion schreiben, die Installation von Plug-Ins ist jedoch schwieriger. Ich habe mich für die professionelle Version entschieden, um Ärger zu sparen. Wenn Sie auch die professionelle Version verwenden möchten, können Sie auf CSDN nach Tutorials suchen. Wenn Sie es wirklich nicht herausfinden können, können Sie auf eine bestimmte Website gehen und eines zu einem günstigen Preis kaufen Der Preis ist sehr günstig, sodass Sie auch die professionelle Version verwenden können. @RequestMapping ist eine der am häufigsten verwendeten Annotationen in Spring Web MVC-Anwendungen. Sie wird verwendet, um die Routenzuordnung der Schnittstelle zu registrieren. Dies bedeutet, dass die Anforderung mit dem Pfad /sayHi aufgerufen wird Code für diese Methode sayHi. Routenzuordnung: Wenn ein Benutzer auf eine URL zugreift (kann als Website-Adresse verstanden werden), wird der Prozess der Zuordnung der Benutzeranforderung zu einer Methode einer bestimmten Klasse im Programm als Routenzuordnung bezeichnet. Aufmerksame Schüler werden feststellen, dass die obige Annotation @RequestMapping und @RestController entfernt. Welchen Nutzen hat diese Annotation? Wir können zuerst versuchen, ihn zu entfernen.
Sie können sehen, dass ein 404 angezeigt wird und die Seite nicht gefunden werden kann.
Dies ist, was @RestController tut. In einem Projekt gibt es viele Klassen und jede Klasse kann viele Methoden haben. Woher weiß das Spring-Programm, welche Methode ausgeführt werden soll? Spring scannt alle Klassen. Wenn die Klasse mit @RestController versehen ist, prüft Spring nur die Methoden in dieser Klasse. Haben Sie die Annotation @RequestMapping hinzugefügt? Natürlich können wir sie zuerst verwenden und später ausführlicher darauf eingehen.
Die Rolle von @RequestMapping @RequestMapping kann sowohl Klassen als auch Methoden ändern. Beim Ändern von Klassen und Methoden ist die Zugriffsadresse der Klassenpfad + Methodenpfad. @RequestMapping identifiziert eine Klasse: legt die Anfangsinformationen des Anforderungspfads der Zuordnungsanforderung fest @RequestMapping identifiziert eine Methode: Festlegen der spezifischen Informationen des Anforderungspfads für die Zuordnungsanforderung
Beachten: Dem URL-Pfad von @RequestMapping kann ein / (Schrägstrich) vorangestellt werden oder nicht. Wenn das Spring-Programm startet, wird ein Urteil gefällt. Wenn am Anfang kein / steht, fügt Spring ein / hinzu. Normalerweise kann der von uns hinzugefügte URL-Pfad / @RequestMapping auch ein mehrschichtiger Pfad sein. Beim endgültigen Zugriff handelt es sich immer noch um den Klassenpfad + Methodenpfad, wie zum Beispiel: Das Obige führt hauptsächlich zwei Anmerkungen ein. Tatsächlich wurde @RequestMapping noch nicht erklärt. Ich werde den nächsten Teil der Anmerkungen separat schreiben und einen Blog schreiben. Lassen Sie mich zunächst eine Frage stellen: Was ist, wenn wir wissen möchten, ob diese Anmerkung „Get“ oder „Post“ unterstützt? Zu diesem Zeitpunkt müssen wir einen Front-End-Code schreiben, um Daten zu senden und zu überprüfen, ob er Get oder Post unterstützt. Für eine reine Back-End-Person verstehen wir jedoch nicht, wie man den Front-End-Code schreibt Zeit, die Software Postman Der Effekt wird reflektiert, und in der nächsten Ausgabe wird über seine Verwendung gesprochen. Vorschau auf die nächste Ausgabe: Erklären Sie die Hauptverwendung von Postman und den zweiten wichtigen Punkt beim Erlernen von Spring MVC: Anfragen.