JAVAEE第四篇Spring AOP

AOP概念:

AOP——Aspect-Oriented Programming,面向切面编程,它是spring框架的一个重要组成部分。一般的业务逻辑都有先后关系,我们可以理解为纵向关系,而AOP关注的是横向关系,每一个关注点可以理解为一个横切面。例如我们的大部分代码都会涉及到日志记录,很多的数据库操作都会涉及到事务的创建和提交。那么从横向关注这些逻辑,他们都一个个的切面。

AOP技术的具体实现

可以通过动态代理技术或者是在程序编译期间进行静态的"织入"方式。AOP经常使用的场景包括:日志记录,事务管理,异常处理,安全控制等方面。Spring 中 AOP 代理由 Spring 的 IoC 容器负责生成、管理,其依赖关系也由 IoC 容器负责管理。在spring中可以仅通过配置文件实现AOP,也可以使用注解实现。

AOP相关概念:

Aspect(方面,切面):系统中需要实现的那些交叉功能,是系统模块化的一个切面,或领域。如日志记录。
Joinpoint(连接点):应用程序执行过程中,插入切面的地点,可以是方法调用,异常抛出,或者要修改的字段。
Advice(通知):切面的实际实现,他通知系统新的行为。AOP通知大致上包括:前置通知(Before),环绕通知(Around),后置通知(After Returning),异常通知(Throws Advice) .。
Pointcut(切入点):定义了将通知应用到哪一个连接点。本质上是一个捕获连接点的结构。在AOP中,可以定义一个point cut,来捕获相关方法的调用。
Introduce(引入):为对象引入附加的方法或属性,从而达到修改对象结构的目的。
目标对象:被通知的对象,既可以是你编写的类,也可以是第三方类。
代理:将通知应用到目标对象后创建的对象,应用系统的其他部分不用为了支持代理对象而改变
Weaving(编织,织入):将切面应用到目标对象从而创建一个新代理对象的过程。织入发生在目标对象生命周期的多个点上:编译器,类装载期,运行期。

spring 实现AOP方式

配置文件和注解方式

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值