# operate **Repository Path**: yangliu817/operate ## Basic Information - **Project Name**: operate - **Description**: 操作日志记录模块 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 3 - **Forks**: 1 - **Created**: 2017-09-07 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README 使用 mysql 建表语句 CREATE TABLE `operation` ( `id` bigint(20) NOT NULL AUTO_INCREMENT, `host` varchar(255) DEFAULT NULL COMMENT '操作人主机', `module` varchar(255) DEFAULT NULL COMMENT '操作模块', `action` varchar(255) DEFAULT NULL COMMENT '操作', `operate_level` varchar(255) DEFAULT NULL COMMENT '操作级别', `operate_status` bit(1) NOT NULL COMMENT '操作状态 1成功 0失败', `operator_id` varchar(255) DEFAULT NULL COMMENT '操作人ID', `operator` varchar(255) DEFAULT NULL COMMENT '操作人', `operate_time` datetime DEFAULT NULL COMMENT '操作时间', `params` varchar(255) DEFAULT NULL COMMENT '操作时提交的参数', `server_method` varchar(255) DEFAULT NULL COMMENT '执行方法', `application_name` varchar(255) DEFAULT NULL COMMENT '操作应用', `remark` varchar(255) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`), KEY `level_idx` (`operate_level`), KEY `operate_time_idx` (`oprate_time`), KEY `application_name_idx` (`application_name`), KEY `operator_id_idx` (`operator_id`) ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8; 1 实现cn.yangliu.operation.OperationHandler接口 此类用于获取操作人 2 实现Operator接口 指明操作人实体类 3 设置OperationUtils.ENTITY_CLASS 指定操作内容实体类 且该类必须实现Operation接口 4 实现 OperationService接口 重写insertOperation方法 5 将OperationAspect托管于spring容器 并设置order 确定记录日志的aop优先级 6 在controller下的方法上使用@Operation 注解 设置相应的属性 或者controller类上使用@Module 方法上使用@Action注解 且该方法上带有@RequestMapping||@PostMapping||@GetMapping注解