SSM----SpringAOP简介

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


Spring的AOP简介

什么是AOP

AOP是指面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的技术。可以对业务逻辑的各个部分进行隔离,从而使业务逻辑各部分之间就耦合度降低,提高程序的可重用性,提高开发效率。

AOP的作用和优势

作用:在运行期间,在不修改源码的情况下对方法进行功能增强

优势:减少重复代码,提高工作效率,便于维护

初级代码阶段:多个方法调用相同的方法,每个方法中添加这个方法,耦合度高

延伸:每个方法中放入相同方法的引用,仍然存在耦合

AOP:通过配置文件,使方法在运行时在内存中和需要的方法进行结合。

目标+增强方法=切面

AOP的底层实现

实际上AOP底层是通过spring提供的动态代理技术实现的。在运行期间,spring通过动态代理技术动态生成代理对象,代理对象方法执行时进行增强功能的介入,再去调用目标对象的方法,从而完成功能的增强。

常用的JDK基于接口和CGLIB代理技术基于父类

AOP的相关概念

Spring的AOP实现底层就是对上面的动态代理的代码进行了封装,封装后我们只需对需要关注的部分进行代码编写,并通过配置的方法完成指定目标的增强、

  • Target(目标对象):代理的目标对象
  • Proxy:一个类被AOP植入增强后,就产生一个结果代理类
  • Joinpoint(连接点):所谓的连接点就是指那些被拦截的点,在spring中可以被增强的方法叫连接点
  • Pointcut(切入点):对那些joinpoint进行拦截
  • advice(通知,增强):所增强的方法即拦截到joinpoint之后要做的事情
  • Aspect:切面目标方法和增强就是切面,切点加通知
  • weaving :织入:把增强和目标对象结合到一起的过程就叫织入

AOP开发需要明确的事项

1.需要编写的内容

  • 编写核心业务代码(目标类的方法)
  • 编写切面类。切面类中有通知
  • 在配置文件中,配置织入关系,即将哪些通知和哪些连接点进行结合

2.AOP技术实现的内容

Spring框架会监控切入点方法的执行,一旦监控到切入方法执行了,使用代理机制,动态创建目标对象的代理对象,根据通知类别,在代理对象的对应位置,将通知对应的功能织入,完成完整的代码逻辑运行。

3.AOP底层使用的代理方法

在spring中,框架根据目标类是否实现了接口来决定采用哪种动态代理方式。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值