Java 如何在运行时JAX-RS过滤器/拦截器中打开/关闭

Java 如何在运行时JAX-RS过滤器/拦截器中打开/关闭,java,jersey,jax-rs,jersey-2.0,interceptor,Java,Jersey,Jax Rs,Jersey 2.0,Interceptor,我有一个日志过滤器(或拦截器),它将HTTP请求和响应详细信息记录到数据库中。由于性能原因,有时我希望在运行时根据示例a*.properties文件中的值打开和关闭过滤器 这是我的JAX-RS过滤器: @Provider public class LoggingFilter implements ContainerRequestFilter, ContainerResponseFilter { @Override public void filter(ContainerRequ

我有一个日志过滤器(或拦截器),它将HTTP请求和响应详细信息记录到数据库中。由于性能原因,有时我希望在运行时根据示例a*.properties文件中的值打开和关闭过滤器

这是我的JAX-RS过滤器:

@Provider
public class LoggingFilter implements ContainerRequestFilter, ContainerResponseFilter {

    @Override
    public void filter(ContainerRequestContext requestContext) throws IOException {
        // logging request details to database
    }

    @Override
    public void filter(ContainerRequestContext requestContext, ContainerResponseContext responseContext) throws IOException {
        // logging response details to database
    }
}

我可以在过滤器的开头添加
if
条件,但这不是我想要做的。如果可能的话,我想以某种方式附加/分离过滤器。

你不能……。如果没有“如果”,if会有什么问题?如果没有“如果”,那将非常优雅。只需更改输出到控制台/文件的日志记录级别我正在“记录”数据库。。。无论如何,我知道没有办法连接/分离过滤器或拦截器。