我需要能够将Spring MVC URL模式匹配表达式列表转换为实际的Regex模式,以便我可以匹配它们的字符串。
Spring模式示例:
/actionGroups/{action-group-id:\d+}
目前,如果我编译上面的字符串,由于PatternSyntaxException
个字符导致非法重复,我得到{
。
Spring是否公开了它用于将这些字符串编译/匹配到实际Regex模式的机制?如果我可以重用它们的功能,那将会很酷。
否则我想我需要手动转义{
个字符,并在此示例中删除模式名称.. action-group-id
。
答案 0 :(得分:0)
您要尝试的操作没有任何问题,请检查您的模式语法:
@RequestMapping("/actionGroups/{action-group-id:\\d+}")
public void test(@PathVariable(value = "action-group-id") Integer id) {
// you can use id ...
}
答案 1 :(得分:0)
根据Sotirios Delimanolis的评论,看起来这是我正在寻找的AntPathMatcher课程。
此类有一个匹配方法,它采用类似上面的URL模式和URL字符串,并根据字符串是否匹配返回true / false。