Java 使用方法内部的注释

Java 使用方法内部的注释,java,annotations,jax-rs,Java,Annotations,Jax Rs,有没有办法在声明注释的同一方法中使用注释的值 @GET @Produces({MediaType.APPLICATION_XML}) @Path(CONSTANTS.PATH1) public MyModel getInfo( @PathParam(CONSTANTS.ID) String id, @Context HttpServletRequest request, @Context HttpServletRespo

有没有办法在声明注释的同一方法中使用注释的值

@GET
@Produces({MediaType.APPLICATION_XML})
@Path(CONSTANTS.PATH1)
public MyModel getInfo(
            @PathParam(CONSTANTS.ID) String id, 
            @Context HttpServletRequest request, 
            @Context HttpServletResponse response) {
    ...
}

在上面的示例中,是否可以在方法中使用
@Path
(CONSTANTS.PATH1)的值?我可以直接使用CONSTANTS.PATH1的值,但是如果可能的话,可以从注释本身获取吗?

您正在寻找Java反射api。听起来像是一个。确切的用例是什么?也许可以使用UriInfo或UriBuilder。否则,您将不得不使用一些反射,如果注释没有
RUNTIME
@Path的保留策略
RUNTIME
,这可能不起作用。如果它很复杂(Uri Info,UriBuilder)而且不直接,那么使用相同的字符串常量是一种简单的方法。