3.项目中通用的系统日志

发布时间 2023-11-28 16:47:30作者: 求知律己

  在实际项目中,我们通常会基于注解和AOP实现系统日志功能,即记载用户调用标有日志注解的方法的一些使用信息。使用注解完成该功能还是走注解三板斧流程,链接可查看2.基础加强版面试题 - 求知律己 - 博客园 (cnblogs.com)中第四节中的注解

1.定义注解

  定义注解其实就是创建一个注解,定义其是否被Javadoc工具编译成文档(@Document),注解可以使用的地方(@Target),注解的有效期(@Retention),注解是否可被子类继承(@Inherit)。

@Documented
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface OperateLog {

    //信息
    String message() default "";

    //模块名
    String modular() default "";

    //业务类型(0:其他 1:新增 2:修改 3:删除)
    public BusinessType businessType() default BusinessType.OTHER;

    //操作类型(0 成功、1失败)
    String operateType() default "";

    //操作明细
    String operateDetailsType() default "";


}
系统日志的注解定义

2.使用注解

  使用注解其实就是将注解标注在哪些地方使用。 

   上述图片中,箭头指向的地方表示注解使用在方法上,其实在定义注解的代码中已经通过@Target(ElementType.Method)标识注解使用在方法上。

3.为注解注入灵魂