Heim > Java > javaLernprogramm > Wie verhindert man die Kürzung von @PathVariable in Spring MVC?

Wie verhindert man die Kürzung von @PathVariable in Spring MVC?

Linda Hamilton
Freigeben: 2024-10-29 20:42:30
Original
408 Leute haben es durchsucht

How to Prevent @PathVariable Truncation in Spring MVC?

Auflösen der @PathVariable-Kürzung in Spring MVC

Problem:
Wenn ein Spring MVC-Controller eine @PathVariable mit einer benutzerdefinierten Pfadvariablen definiert Argument, Pfadsegmente, die Sonderzeichen enthalten, werden abgeschnitten.

Beispiel:

@RequestMapping(method = RequestMethod.GET, value = Routes.BLAH_GET + "/{blahName}")
Nach dem Login kopieren

Die Übergabe eines URI mit einer Pfadvariablen blah2010.08.19-02:25:47 würde Dies führt dazu, dass der blahName-Parameter auf blah2010.08 gekürzt wird.

Lösung:
Um eine Kürzung zu verhindern, verwenden Sie einen regulären Ausdruck im @RequestMapping-Argument:

@RequestMapping(method = RequestMethod.GET, value = Routes.BLAH_GET + "/{blahName:.+}")
Nach dem Login kopieren

Die . = Regex erlaubt eine beliebige Anzahl von Zeichen (einschließlich Sonderzeichen) nach dem führenden Punkt, wodurch effektiv das gesamte Pfadsegment als Pfadvariablenwert erfasst wird. request.getRequestURI() gibt dann den vollständigen URI zurück, einschließlich des vollständigen blahName.

Das obige ist der detaillierte Inhalt vonWie verhindert man die Kürzung von @PathVariable in Spring MVC?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage