面向切面的编程:在不修改原有代码的前提下,添加新的功能。
IoC和AOP是spring的基础
类/接口/方法 都支持AOP都是连接点
Joint point | 连接点 | 程序中支持AOP的位置 |
Pointcut | 切点 | 要增加功能的一组Joint point(连接点) |
Advice | 增强 | 要添加的新功能 |
Aspect | 切面 | 为切点添加的新功能(Pointcut+Advice) |
Target | 目标对象 | 具体的每一个Pointcut(切点) |
Weaving | 织入 | 在Target上增加Aspect(在每一个要增加功能的对象上增加功能) |
举例(再springboot中使用)
为controller中的所有方法打印日志的功能
1.引入依赖
<!--引入AOP场景启动器-->
<dependency>
<groupId