我的目的是要处理
http://localhost:8080/getuser?name=Mike&numberOfWorks=2&salary=1
工作数量范围是0-2,薪水-从0(无)到2(巨大)。
另一个要求是设置年龄和工资的默认值。
我已经用Java编写了这段代码,但是,它不能正常工作(返回名称和两个def值),并且我没有机会对其进行调试。
public Response getPerson(
@QueryParam("name") String name,
@DefaultValue("0") @QueryParam("{numberOfWorks: [0-2]}") int availability,
@DefaultValue("0") @QueryParam("{salary: [0-2]") int sort) throws NotFoundException{
return Response.status(200).entity(name + ", " + availability + ", " + sort).build();
使用提到的HTTP时此方法的返回为
Mike, 0, 0
编辑
不幸的是,@ Pattern的方法对我不可用。因此,我将不胜感激。
最佳答案
批注必须提及查询参数的名称:
@QueryParam("numberOfWorks")
如果您使用JAX-RS 2.0,则可以添加
@Pattern("[0-2]")
进行中
@QueryParam("numberOfWorks") @Pattern("[0-2]") int availability