我正在使用Java Jersey库创建RESTful Web服务。
我正在使用查询参数作为方法。我想为该查询参数指定默认值。如果我指定一个常量字符串,那很好。但是,如何将运行时值指定为默认值?
import javax.ws.rs.DefaultValue;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.QueryParam;
import javax.ws.rs.core.MediaType;
@Path( "Hello" )
public class HelloWorld
{
private String defaultValue = "Default";
@GET
@Produces( MediaType.APPLICATION_XML )
public String greet( @QueryParam( "User" ) @DefaultValue( "defaultValue" )String userName )
{
String returnValue = "Hello " + userName;
System.out.println( returnValue );
return returnValue;
}
}
而不是常量,如何在此处使用变量?有可能吗?
不,不可能-至少不使用注释。您能否说说为什么要这样做?然后也许我可以建议一些替代方法。
不确定这是否是您想要的,但是您是否尝试将默认值定为最终值?
final String defaultValue =“默认”;
它对我有用。