Class OpLogContextHolder
java.lang.Object
org.shoulder.log.operation.context.OpLogContextHolder
该类充当 OperationLogHolder 的角色。set日志对象后,可以通过该工具在同一线程内操作这个日志对象。
主要为了配合
OperationLog注解的使用
若应用希望扩展该类能力:允许以继承或组合方式调用类,并使用新的类,增加扩展能力。
todo 【优化-扩展性】获取上下文,若不存在时,默认策略异常 → 忽略?或者可配置?- Author:
- lym
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic voidaddOperableObjects(Collection<? extends Operable> operableObjs) 添加多个被操作对象static voidclean()线程变量清理: 除非你很明白框架原理,否则不要主动调用该方法static void临时关闭自动记录日志,一般用于表示希望 @OperationLog 只生成操作日志对象,而不记录。static void重新开启自动记录日志static OpLogContext不经过检查,直接获取日志上下文static OpLogContext获取当前上下文,并检查状态static OperationLogDTOgetLog()获取日志实体获取日志上下文中所有被操作对象static Operatorstatic boolean是否开启自动记录日志static boolean抛异常后是否记录操作日志static voidlog()记录日志static voidsetContext(OpLogContext opLogContext) 设置日志上下文static voidsetLog(OperationLogDTO entity) 设置日志实体static voidsetLogWhenThrow(boolean logWhenThrow) 抛异常后是否记录操作日志static voidsetOperableObject(Operable operableObj) 批量设置被操作对象static voidsetOperableObjects(Collection<? extends Operable> operableObjs) 批量设置被操作对象static voidsetOperationLogger(OperationLogger opLogger) static voidsetOperator(Operator entity) 设置用户信息
-
Constructor Details
-
OpLogContextHolder
public OpLogContextHolder()
-
-
Method Details
-
log
public static void log()记录日志 -
getContextOrException
获取当前上下文,并检查状态 -
getContext
不经过检查,直接获取日志上下文 -
setContext
设置日志上下文 -
getLog
获取日志实体- Returns:
- 日志上下文中日志实体
-
setLog
设置日志实体 -
getOperator
- Returns:
- 日志上下文中 当前用户
-
setOperator
设置用户信息 -
setOperableObject
批量设置被操作对象 -
getOperableObjects
获取日志上下文中所有被操作对象 -
setOperableObjects
批量设置被操作对象 -
addOperableObjects
添加多个被操作对象 -
isEnableAutoLog
public static boolean isEnableAutoLog()是否开启自动记录日志 -
closeAutoLog
public static void closeAutoLog()临时关闭自动记录日志,一般用于表示希望 @OperationLog 只生成操作日志对象,而不记录。场景:批量导入时,使用新线程对导入内容的校验,日志记录也在新日志上下文中做, 处理请求的方法中不希望记录操作日志 在方法中调用 closeAutoLog,告诉框架在本方法结束后不要记录操作日志
-
enableAutoLog
public static void enableAutoLog()重新开启自动记录日志 -
isLogWhenThrow
public static boolean isLogWhenThrow()抛异常后是否记录操作日志 -
setLogWhenThrow
public static void setLogWhenThrow(boolean logWhenThrow) 抛异常后是否记录操作日志 -
clean
public static void clean()线程变量清理: 除非你很明白框架原理,否则不要主动调用该方法 -
setOperationLogger
public static void setOperationLogger(OperationLogger opLogger) throws org.springframework.beans.BeansException - Throws:
org.springframework.beans.BeansException
-