@Path等效于spring-boot

时间:2015-03-07 13:27:24

标签: java spring-boot

假设我有一个控制器,其定义方式如下:

@RestController
@RequestMapping("/{user-id}/foo")
public class FooController {


    @RequestMapping("bar")
    public BarController someBarLogic() {
      //
    }
}

是否可以在不指定整个根路径的情况下超越{user-id} / foo / bar? (有没有办法在Jersey中对@Path注释或Spring-Boot中的等效注释进行相对化路径?)

1 个答案:

答案 0 :(得分:0)

看起来你正在寻找路径模式中的蚂蚁式通配符。看看这里:

http://docs.spring.io/spring/docs/current/spring-framework-reference/html/mvc.html#mvc-ann-requestmapping-patterns

因此,您可以像这样定义RequestMapping

@RestController
@RequestMapping("/foo")
public class DemoController {
    @RequestMapping(value = "/bar/**", method = RequestMethod.GET)
    public String getDemo() {
        return "Hello world!";
    }
}

将匹配/foo/bar/baz

好的,另一个例子基于你的评论:

@RestController
public class DemoController {
    @RequestMapping(value = "/**/baz/**", method = RequestMethod.GET)
    public String getDemo() {
        return "Hello world!";
    }
}

这将匹配与上面相同的网址,以及/foo/bar/baz/bar/foo