Im Prozess des Lernens von Spring MVC ist es notwendig, zunächst mehrere Schlüsselparameter zu verstehen:
@Regler:
In der Klasse, die in der Klasse kommentiert ist, programmiert diese Klasse einen Controller. Wenn das Projekt in den Frühling startet, scannt es automatisch für diese Klasse und führt die entsprechende URL -Routing -Mapping durch.
@ControllerPublic Class UserAction {} @RequestMapping
Geben Sie den URL -Mapping -Pfad an. Wenn RequestMapping im Controller konfiguriert ist, konfiguriert die spezifische Anforderungsmethode auch den Pfad. Der zugeordnete Pfad ist die Überlagerung der beiden Pfade. Häufig verwendete Karten wie: RequestMapping ("url.html")
Konfigurieren Sie den Zuordnungspfad:
@ControllerPublic Class UserAction {@RequestMapping (value = "/get_alluser.html") public modelAndView getAlluser (String -ID) {}} Die obige Konfigurationszuordnung
http: // ***: 8080: web1/get_alluser.html:
Wenn Sie @RequestMapping (value = "/user") zu @Controller hinzufügen, wird der Kartenpfad
http: // ***: 8080: web1/user/get_alluser.html
@Responsebody
Geben Sie die Zeichenfolge, die der Annotationsmethode entspricht, direkt zurück
@Requestparam
Zuordnen Sie die Parameter, die der URL entsprechen, automatisch auf die Werte über der Aktion und RequestParam -Standardeinstellungen auf die erforderlichen Parameter.
@PathVariable
Holen Sie sich die URL -Mapping -Parameter des angegebenen Formats der @RequestMapping -Konfiguration
/ * * Direct Output HTML oder JSON String * Anforderungspfad: * /web1/urlinfo/getContent.html?key=rhythmk * /web1/urlinfo/getContent.json?key=rhythmk * */@RespondeBody @Requestmapping (VAVEL = "/GETRECTENT.FRAGENT (VAVELLE (VAVELLE ="/////GETRAGENT.FRAGEND. @RequestParam ("Schlüssel") String -Schlüssel, @RequestParam (value = "key2", fordert = false, defaultValue = "defaultValue") String key2) {System.out.println ("getContent heißt"); String result = "Inhalt direkt zurückgeben - Schlüssel:" + taste + ", key2:" + key2; System.out.println (Ergebnis); Rückgabeergebnis; } / * * RequestMapping unterstützt die URL-Konfiguration im Style-Stil: * Anforderungspfad: * /urlinfo/geturlant/config.html?key=adddd */@Responbody @RequestMapping (Value = "/geturlant/**.htmL") public String Geturlant (httpserds: {the folgende String-Sting-Sting-Sting-Sting-Sting-Sting-Sting-String-String-Sting-String-String) (HttpServe) {THE ACKUGRASTERS: request.getQueryString (); Rückgabeergebnis; } / * * Konfigurieren Sie die URL des angegebenen Formats und müssen Sie den entsprechenden Parametern abgeben. @PathVariable ("MenüId") String -MenüID) {modelAndView modus = new ModelAndView (ShowMSG); modus.addObject ("msg", "Geted ID:" + id + ", MenüId:" + MenüId); Rückgabemodus; } /** Nur Post -Anfragen werden empfangen*/@ResponseBody @RequestMapPing (value = "/posturl.html", method = requestMethod.post) public String urlMethod (@RequestParam String -ID) {return "nur Postanforderung, die erhaltene ID:" + id; } / * * Schreiben Cookies * */@RequestMapping ("/writecookies.html") public modelAndView writecookies (@RequestParam -Stringwert, httpServletResponse -Antwort) {response.addcookie (neuer Cookie ("Schlüssel", Wert); ModelAndView modus = new ModelAndView (ShowMSG); modus.addObject ("msg", "Cookies erfolgreich geschrieben"); Rückgabemodus; } / * * Erhalten Sie den entsprechenden Schlüsselwert über @cookievalue * */@RequestMapping ("/getcookies.html") public modelAndView getcookie (@Cookievalue ("Key") String CookValue) {modelandView modus = new modelAndView (ShowMSG); modus.addObject ("msg", "cookies =" + cookValue); Rückgabemodus; } / * * Pass die Servlet -API als Parameter in * Sie können httpServletResponse direkt in der Aktion verwenden. ModelAndView modus = new ModelAndView (); modus.addObject ("msg", "result =" + result.toString ()); return Showmsg; } / * * Instantieren Sie das Objekt gemäß den Parametern, die in der URL * * zum Beispiel übergeben wurden: http://127.0.0.1:8080/web1/urlinfo/getObject.html?userid=1&username=ad */@RequestMaping ("GetObject.html). "Benutzer -ID:" + user.getUerId (). ToString () + ", Benutzername:" + user.getusername (). ToString (); ModelAndView modus = new ModelAndView (ShowMSG); modus.addObject ("msg", "result =" + result.toString ()); Rückgabemodus; } Seitensprung implementieren:
/ * * Page Jump * /web1/urlinfo/redirectPage.html * */@RequestMapping ("/redirectPage.html") public String redirectPage () {return "redirect: getcookies.html? R = 10"; } JSON direkt zurückgeben
Die angeforderte URL muss in .json enden, ansonsten Ausnahme
Die Ressource nicht geladen: Der Server antwortete mit einem Status von 406 (nicht akzeptabel): Die durch diese Anfrage identifizierte Ressource kann nur Antworten mit Merkmalen generieren
Rückgabeeinheit:
@JsonSerialize (include = jsonSerialize.inclusion.non_null) öffentliche Klasse UserInfo {private Integer userId; public Integer getUserid () {userID zurückgeben; } public void setSerId (Integer userID) {userId = userId; } public String getUnername () {return userername; } public void setUnername (String -Benutzername) {userername = userername; } private String -Benutzername; }Rückgabeaktion
@ResponseBody @RequestMapping ("/getUser.json") public userInfo getUser () {System.out.println ("GetUser"); UserInfo model = new UserInfo (); Modell.SetUerId (100); model.setusername ("wang kun"); Rückkehrmodell; } fragen:
/web1/urlinfo/getuser.json
Ausgabe:
{"userId": 100, "Benutzername": "Wang Kun"}Das obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, es wird für das Lernen aller hilfreich sein und ich hoffe, jeder wird Wulin.com mehr unterstützen.