All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.houkunlin.system.applog.AppLog Maven / Gradle / Ivy

package com.houkunlin.system.applog;

import java.lang.annotation.*;

/**
 * 记录操作日志、应用日志。
 * 

用法: 在Controller方法接口上增加 @AppLog("接口操作说明") @AppLog(value = "接口操作说明", type = "系统日志") 注解

*

用法: 支持 SpEL 表达式 *

    *
  • @AppLog("接口操作说明,方法名称:#{method.name}")
  • *
  • @AppLog("接口操作说明,方法参数:#{args[0].toString()}")
  • *
  • @AppLog("接口操作说明,方法参数:#{#id}") 其中的 id 为方法参数名称
  • *
  • @AppLog("接口操作说明,当前对象:#{target.toString()}")
  • *
  • @AppLog("接口操作说明,当前对象class:#{targetClass.getName()}")
  • *
  • @AppLog("接口操作说明,返回结果:#{result?.toString()?:'无返回值'}")
  • *
* *

* * @author HouKunLin * @date 2020/8/11 0011 16:23 */ @Target(ElementType.METHOD) @Retention(RetentionPolicy.RUNTIME) @Documented public @interface AppLog { /** * 日志内容;支持 SpEL 表达式 * * @return 日志内容。支持 SpEL 表达式 */ String value() default ""; /** * 发生错误时的日志内容,默认为与 value 内容一致,但在后面加了 exception.getMessage() 的内容;支持 SpEL 表达式 * * @return 发生错误时的日志内容。支持 SpEL 表达式 */ String errorValue() default ""; /** * 操作类型、业务类型(自行传入,建议使用对象名称,或者对象完整包名); * 支持 SpEL 表达式 * * @return 操作类型。 */ String businessType() default ""; /** * 操作记录关联的业务ID,通过 {@link #businessType} + businessId 一般情况下可定位到一条相对应的数据信息; * 支持 SpEL 表达式 * * @return 操作类型。 */ String businessId() default ""; /** * 日志创建人;支持 SpEL 表达式 * * @return 用户唯一主键。支持 SpEL 表达式 */ String createdBy() default ""; }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy