使用注释阻止日志记录

时间:2013-11-27 17:06:07

标签: java logging aspect

在我的一个项目中,我使用slf4j作为日志记录。 我想开发一个注释,当应用于特定的bean属性时,应该阻止它进行日志记录。它应该仅在记录时使用某些值(如“**************”)来屏蔽该属性值。 任何人都可以告诉我如何做到这一点? 我用弹簧AOP试了一下。在切入点表达式中,我编写了一个表达式,用于在bean属性上调用get方法之前和之后调用方面。但它最终徒劳无功。 示例bean代码如下

public class MyBean{
      private String property;

      public void setProperty(String property){
          this.property = property;
      }

      @NotLoggable   // This is the annotation which I should develop
      public String getProperty(){
           return property;
      }
  }

只有在使用@NotLoggable注释的get *方法在logger方法中调用时才应用方面,例如error(),warn()... e.t.c

否则,如果我可以在字段(属性)上应用注释,如下面的代码,如果它被阻止记录,那也没关系。

public class MyBean {

      @NotLoggable   // This is the annotation which I should develop
      private String property;

      public void setProperty(String property){
          this.property = property;
      }


      public String getProperty(){
           return property;
      }
  }

对此有什么替代方案吗?

aspectj可以帮助我吗?

0 个答案:

没有答案