首先我们需要了解AOP和反射的原理,我这里主要是实战的开发,所以就只对AOP和反射进行简单的概述。
AOP指的是面向切面进行编程,就是正对某一个平面进行竖向的切割,生活中的例子就好比我们每次吃饭前都要洗手一样,这个洗手的动作就是我们需要在切面进行的方法,而吃饭前就是类似一个切面。
反射指的是利用类加载器加载的类对象反射出该类的属性,方法和注解。比如说我想买个华为手机的电池,可是我又不知道该买怎么样的电池,就可以打电话给华为官网的客服小姐姐,她就会告诉你电池的型号,并且会提供给你具体的购买渠道和地址,这就是一个简单的小例子。
不多废话,开始正文
1.我们需要引入支持AOP编程的jar包
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-aop</artifactId>
</dependency>
这里不知道包名的直接可以去https://mvnrepository.com 这个网站查找报名然后引入即可
2.新建一个LogAspectConfiguration配置类,加上支持面向切面的aspect注解
@Component//spring 组件注解
@Aspect//支持面向切面的注解
@Slf4j//lombor的日志注解
public class LogAspectConfiguration {
String controllerName;//保存我们请求的controller类的类名
String method;//保存我们请求的方法名
}
2.建立我们需要切入的切点已经切入的范围
@Component//spring 组件注解
@Aspect//支持面向切面的注解
@Slf4j//lombor的日志注解
public class LogAspectConfiguration {
String controllerName;//保存我们请求的controller类的类名
String method;//保存我们请求的方法名
@Po