问题描述
||
假设我有这个(这只是一个示例):
@GET
@Path(value=\"address\")
@Produces(\"application/json\")
public Response getAddress(@QueryParam(\"user\") User user){
...
}
并且用户是
class User{
...
public static User valueOf(String user){
if(user == null) return DEFAULT_USER;
return dao.findById(user);
}
}
如果我执行/ api / address?user = amir一切正常,但是想法是如果我不为用户提供值,那么我想使用DEFAULT_USER。但这实际上并没有调用valueOf。有没有办法来解决这个问题?
解决方法
JAX-RS具有@DefaultValue批注:
@QueryParam(\"user\") @DefaultValue(\"__DEFAULT\")
class User{
...
public static User valueOf(String user){
if(user == null||\"__DEFAULT\".equals(user) return DEFAULT_USER;
return dao.findById(user);
}
}