引言
众所周知,spring aop是基于动态代理模式的,而动态代理又根据是否实现接口分为两类:1.基于JDK的动态代理和基于cglib的动态代理,下面就两者的区别做些简单概括(如所示):https://github.com/TomasXiong/design-pattern.git
本文基于spring boot实现一个简单的用户日志拦截记录,记录用户的操作模块和操作时间。
首先,第一步,建议日志记录表:
CREATE TABLE log_record
(
id
int(11) NOT NULL AUTO_INCREMENT COMMENT ‘ID’,
request_method
varchar(255) DEFAULT NULL,
request_time
varchar(255) DEFAULT NULL,
PRIMARY KEY (id
)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
第二步:引入aop依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-aop</artifactId>
</dependency>
第三步:开始编码
/**
- 日志注解
- @author 64507
*/
@Target(ElementType.METHOD) //方法注解(元注解)