Notiz darüber, wie Pfadvariablen im Frühjahr empfangen und an das Umleitungsziel übergeben werden
// (1)
@GetMapping("{name}")
public String detail(@PathVariable String name) {
return "detail";
}
// (2)
@GetMapping("idol/{name}")
public String idolDetail(@PathVariable("name") String idolName) {
return "idol/detail";
}
// (3)
@GetMapping("unit/{unitId}/idol/{idolId}")
public String idolDetail(@PathVariable("unitId") Integer unitId, @PathVariable("idolId") Integer idolId) {
return "idol/detail";
}
Wenn Sie den im Pfad enthaltenen Wert bei der Verarbeitung der Methode verwenden möchten, verwenden Sie die Pfadvariable ({Variablenname}
) als die Stelle, an der der zu empfangende Wert in die Mapping-Annotation eingegeben wird, und setzen Sie das entsprechende Argument auf @PathVariable. Geben Sie
an.
(1) Wenn der Pfadvariablenname und der tatsächlich verwendete Variablenname identisch sind, kann das Wertattribut von "@ PathVariable" weggelassen werden. (2) Wenn die Variablennamen unterschiedlich sind, geben Sie den Namen der Pfadvariablen im Wertattribut von "@ PathVariable" an. (3) Mehrfach ist möglich.
// (1)
@PostMapping("idol/{name}/update")
public String update(@PathVariable String name) {
return "redirect:/idol/{name}";
}
// (2)
@PostMapping("redirect")
public String redirect(RedirectAttributes redirectAttributes) {
redirectAttributes.addAttribute("name", "Jinka Osaki");
return "redirect:/idol/{name}";
}
(1) Eine Variable, die einmal als Pfadvariable empfangen wurde, kann unverändert an das Umleitungsziel übergeben werden. Wenn Sie im obigen Code eine POST-Anfrage an "/ idol / Kiriko Yuya / update" senden, lautet die URL des Weiterleitungsziels "/ idol / Kiriko Yuya". (2) Wenn die mit der Methode "addAttribute" von RedirectAttributes hinzugefügte Variable in der Pfadvariablen des Umleitungsziels enthalten ist, wird sie so erweitert, wie sie als Pfadvariable ist. Im obigen Fall lautet die Weiterleitungsziel-URL "/ idol / Osaki Jinka".
(2) kann eine einfache Zeichenfolgenkombination sein, wenn es nicht erforderlich ist, einen Wert separat einzugeben.
Offizielle Referenz Argumente für Spring MVC Controller Gründliche Einführung in die Entwicklung von Spring Java-Anwendungen mit Spring Framework
Recommended Posts