我正在使用用于RESTful Web服务的Java API(JAX-RS),
并在Jersey实现JAX-RS时遇到@DefaultValue
注释。
以下是代码段
@GET
@Path("/query")
public Response getUserWithQueryParams(
@DefaultValue("defaultId") @QueryParam("from")String from,
@DefaultValue("defaultName") @QueryParam("to") String to,
@DefaultValue("mobileNo")@QueryParam("orderBy") List<String> orderBy
){
我的第三个论点是List<String>
,它可以有多个值
例如我明确传递参数
users/query?from=100&to=200&orderBy=age&orderBy=name
现在我的第三个参数的值为[age,name]
,
但如果我没有通过任何明确的参数,那么有没有办法设置多个默认值。 ?
答案 0 :(得分:2)
这不符合您的要求。如果对象是List类型,则它将在列表中插入一个值。列表中的对象将是列表的默认值的值。 Check this out为什么不尝试检查orderBy == null
是否确实如此,然后将您的默认值添加到orderBy
?