3

有谁知道如何创建自定义注释,例如传入字符串数组参数的数量?像这样的东西:

@POST
@Timed
@ExceptionMetered
@MeasureArray
public Response postJob(String[] array)
{
    //...
}

并且应该使用某种代码来衡量:

Counter counter = metrics.counter("nameOfCounter");
        counter.inc();

我怎样才能实现这个?有什么想法吗?

这无济于事:

  1. 使用 Jersey 的 AbstractHttpContextInjectable 的自定义方法注释不起作用
  2. 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);
    }

}

它适用于这种特殊情况。

4

0 回答 0