com.ideaaedi.commonspring.lite.annotation.ParameterRecorder Maven / Gradle / Ivy
package com.ideaaedi.commonspring.lite.annotation;
import com.ideaaedi.commonspring.lite.enums.ParameterHandleModeEnum;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
/**
* 参数记录器
*
* @author JustryDeng
* @since 1.0.0
*/
@Target(value = ElementType.TYPE)
@Retention(value = RetentionPolicy.RUNTIME)
public @interface ParameterRecorder {
/**
* 需要包含的methodReference前缀
为空则表示全部包含
methodReference形如:
* com.ideaaedi.commonspring.aop.ParameterRecorderAdvice#init
*/
String[] includePrefixes() default {};
/**
* 需要排除的methodReference前缀
为空则表示都不需要排除
methodReference形如:
* com.ideaaedi.commonspring.aop.ParameterRecorderAdvice#init
*/
String[] excludePrefixes() default {};
/**
* 将参数转换为字符串的方式
*/
ParameterHandleModeEnum parameterHandleMode() default ParameterHandleModeEnum.USE_JSON;
/**
* 记录日志时,是否美化
*/
boolean pretty() default true;
/**
* 当参数类型是这些时,不打印该参数
*/
Class[] ignoreParamTypes() default {};
}