如何在 JAX-RS 中为查询参数指定替代名称?

How can I specify an alternative name for a query parameter in JAX-RS?

我想创建一个具有替代版本的查询参数。例如

/example?lastName=Smith

应该等同于

/example?surname=Smith

这是代码:

@GET
@Path("/example")
public Response getExample(@QueryParam(WHAT GOES HERE??) String name) {

}

我如何处理这两种可能性?

使用 Jax-rs 注释没有简单的方法可以做到这一点;您必须自己进行组合。执行此操作的最简单方法可能是在端点的实现中:

@GET
@Path("/example")
public Response getExample(@QueryParam("lastName") String lastName, 
                           @QueryParam("surname") String surname) {
    String name = (lastName != null) ? lastName : surname;
}