springmvc @RequestMapping 以下两个网址如何精确匹配



springmvc 在我的代码中@RequestMapping

@RequestMapping("/{c1}-{c2}-{c3}-{c4}.htm")
public void category(@PathVariable("c1") Integer c1,@PathVariable("c2") Integer c2,@PathVariable("c3") Integer c3,@PathVariable("c4") Integer c4){
    System.out.println(c1);
    System.out.println(c2);
    System.out.println(c3);
    System.out.println(c4);
}
@RequestMapping("/{c1}-{c2}-{c3}-{c4}-{label}.htm")
public void label(
        @PathVariable("c1") Integer c1,
        @PathVariable("c2") Integer c2,
        @PathVariable("c3") Integer c3,
        @PathVariable("c4") Integer c4,
        @PathVariable("label") Integer label){
    System.out.println(c1);
    System.out.println(c2);
    System.out.println(c3);
    System.out.println(c4);
    System.out.println(label);
}

我要url"/2-5-3-138-8.htm"映射"标签"方法~

但实际映射"类别"方法并解析出参数:

  • C1:2-5
  • C2:3
  • C3:138
  • C4:8

如何让此路径"/2-5-3-138-8.htm"与"标签"方法匹配?

尝试按如下方式更新模式:

@RequestMapping("/{c1:[0-9]+}-{c2:[0-9]+}-{c3:[0-9]+}-{c4:[0-9]+}.htm")
...
@RequestMapping("/{c1:[0-9]+}-{c2:[0-9]+}-{c3:[0-9]+}-{c4:[0-9]+}-{label}.htm")

最新更新