1

我在带有 JAX-RS 的 java 类中有这个代码方法:

import javax.ws.rs.GET;
import javax.ws.rs.HeaderParam;
import javax.ws.rs.POST;
import javax.ws.rs.PUT;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.Response;

@Path("/reports/{id: (zerotrips|notrips|tripsummary|rejectedtrips){1}/{0,1}}")
@GET
public Response get(@Context HttpServletRequest aRequest){
   ....
}

有人可以举一些@Path注释中的表达式映射的url示例吗?

4

1 回答 1

1
/reports/zerotrips
/reports/zerotrips/

zerotrips用括号之间的任何其他替换

(zerotrips|notrips|tripsummary|rejectedtrips){1}

这表示括号中的任何一个值。|意思是“或”。意思是“{1}一次”。

/{0,1}

表示有或没有斜线。{0,1}表示零到一次。

后面的模式{}给出了允许的次数。例如a{3,5}意味着a三到五次。因此以下内容将匹配:aaa, aaaa, aaaaa, 但aa不匹配。

于 2017-09-30T17:03:20.663 回答