package com.simuwang.logging; import java.lang.annotation.*; /** * 系统操作日志注解,必须标注在方法上,当类上也被标注时,只取value作为上级模块名 * * @author fpwag */ @Target(value = {ElementType.TYPE, ElementType.METHOD}) @Retention(value = RetentionPolicy.RUNTIME) @Documented public @interface SystemLog { /** * 描述 */ String value(); /** * 日志类型 */ Type type() default Type.QUERY; /** * 是否保存接口返回结果,默认不保存 * * @return / */ boolean saveResult() default false; /** * 日志类型 */ enum Type { /** * 查询 */ QUERY(1), /** * 新增 */ INSERT(2), /** * 修改 */ UPDATE(3), /** * 删除 */ DELETE(5), /** * 登录 */ LOGIN(6), /** * 退出登录 */ LOGOUT(7), /** * 导入 */ IMPORT(8), /** * 导出 */ EXPORT(9), /** * 其他 */ OTHER(0); private final int value; Type(int value) { this.value = value; } public int getValue() { return this.value; } } }