有谁知道如何创建自定义注释,例如传入字符串数组参数的数量?像这样的东西:
@POST
@Timed
@ExceptionMetered
@MeasureArray
public Response postJob(String[] array)
{
//...
}
并且应该使用某种代码来衡量:
Counter counter = metrics.counter("nameOfCounter");
counter.inc();
我怎样才能实现这个?有什么想法吗?
这无济于事:
- 使用 Jersey 的 AbstractHttpContextInjectable 的自定义方法注释不起作用
- https://gist.github.com/ryankennedy/6688601 -> 缺少如何添加 ito DW 服务。
对于 2.): 添加你的 run():
environment.jersey().register(AuditedMethodDispatchAdapter.class);
与这个类:
import javax.ws.rs.ext.Provider;
import org.slf4j.LoggerFactory;
import com.sun.jersey.spi.container.ResourceMethodDispatchAdapter;
import com.sun.jersey.spi.container.ResourceMethodDispatchProvider;
@Provider
public class AuditedMethodDispatchAdapter implements ResourceMethodDispatchAdapter
{
@Override
public ResourceMethodDispatchProvider adapt(ResourceMethodDispatchProvider provider) {
return new AuditedMethodDispatchProvider(provider,LoggerFactory.getLogger(AuditedMethodDispatchAdapter.class),true);
}
}
它适用于这种特殊情况。