J'ai le mappage suivant:
@RequestMapping(value = "/{first}/{middle:[some regex here?]}/{last}",
method = RequestMethod.GET)
public String test(@PathVariable("first") String first, @PathVariable("middle")
String middle, @PathVariable("last") String last) {}
4 Réponses :
ne peut pas être fait aussi loin que je sache. Tout comme vous l'avez dit, l'expression régulière est appliquée sur l'élément de chemin après avoir séparé le chemin sur chaque barre oblique. L'expression régulière ne peut jamais correspondre à un '/'.
Vous pouvez inspecter manuellement l'URL et l'analyser vous-même de l'objet de la demande. P>
Cela pourrait être fait en écrivant un correspondeur de chemin personnalisé et en configurant le ressort pour l'utiliser. Par exemple, une telle solution est documentée ici: http: // java. dzone.com/articles/spring-3-webmvc-optional-path p>
Le lien fournit un correspondeur de chemin personnalisé et montre comment configurer le ressort pour l'utiliser. Cela devrait résoudre votre besoin si cela ne vous dérange pas d'écrire un composant personnalisé. P>
En outre, il s'agit d'un duplicata de Avec le printemps 3.0, puis-je faire une variable de chemin optionnelle? P>
Dans mon projet, j'utilise une variable intérieure dans le Springframework: voir Handlermapping.html # uri_template_variables_attribute p> P>
Essayez d'utiliser cette liste tableau d'URL d'URL disponible pour une méthode spécifique p> mais faites attention à la création de la liste d'URL lorsque vous utilisez @Pathvariable dans votre méthode Signature, il ne peut pas être nul. p> espère que cette aide p> p>