浅谈Spring框架AOP概念

何为AOP?
AOP(Aspect Oriented Programming,面向切面编程):AOP是一种新的方法论,在这之前相信我们都听过面向对象编程(OOP),AOP就是对OOP的补充,它们的关系是相辅相成的,并不是谁依靠谁的关系。
AOP主要做什么?
从AOP的语意来看,面向对象编程针对的就是对象,而它的兄弟面向切面编程不难想象针对就是切面。切面可以理解为对象实例某个关注点的模块化,这个关注点可以横切多个对象。就是在对象进行一些操作前后的某些时间点切入,从而在不改变代码的情况下为对象加入一些新的功能。
AOP个组件及其作用
1.切面Aspect
一个关注点的模块化,这个关注点可以横切多个对象。比如事务和日志管理是web应用中很好的横切关注点例子
2.连接点JoinPoint
在对象程序执行中某个特定的点,比如方法调用或者抛出异常的时候。在Spring AOP中,一个连接点总是代表一个方法的执行
3.通知Advice
在切面的某个连接点上执行的操作,也就是切面要为对象添加的功能。通知类型有:前置before、后置after、环绕around、抛出异常after-throwing、返回值after-returning
4.切入点Pointcut
匹配连接点的断言。通知和一个切入点表达式关联,并在满足这个切入点的连接点上运行。Spring 缺省使用 AspectJ 切入点语法
5.引入Intrudtion
声明额外的方法或某个字段。Spring允许引入新的接口(以及一个对应的实现)到任何被代理的对象。
6.目标对象Target Object
被切面所通知的对象,也就是切面将要操作的对象。Spring AOP 是通过运行时代理实现的,这个对象永远是一个 被代理(proxied) 对象
7.AOP代理 AOP Proxy
AOP框架创建的对象,用来实现切面契约,切面要实现的功能。AOP代理是AOP的核心,类似于代理模式,可分为动态代理和静态代理
8.织入Weaving
把切面连接到其他应用程序类型或者对象上,并创建一个被通知的对象。Spring在运行时完成织入。
AOP应用场景
1.一些类、方法的性能追踪
2.权限控制
3.全局错误处理
4.懒加载
5.日志追踪
6.事务处理
7.缓存
8.内容传递等

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值