这是原始方法:
@GET
@Produces({"application/json"})
public Response getTermClouds(@Context SecurityContext secCtxt, @Context UriInfo ui)
{
return null
}
我想复制这个方法,但添加一个新的String参数,新方法的注释与以前相同,如下所示:
@GET
@Produces({"application/json"})
public Response getTermClouds(@Context SecurityContext secCtxt, @Context UriInfo ui,String newParam)
{
return null
}
我使用javassist来做到这一点,我不想添加“get”注释然后添加“products”注释,因为可能还有许多其他未知的注释。如何作为常见方式执行此操作?
最佳答案
当您尝试向方法添加新参数时,Javassist 不允许向现有方法添加额外参数,而是将接收额外参数以及其他参数的新方法添加到现有方法中。同类。
可以通过 CtNewMethod.copy() 获取 CtMethod 对象的副本。
尝试this创建您以前的方法的副本。你能准确解释一下你想用注释来做什么吗?
关于javassist 复制带有注释的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43164084/