AOP概述

      Spring提供了AOP声明事务的功能,可以针对pojo对象提供声明式服务能力,如声明式事务。把遍布在系统中的独立服务,这些服务具有横切性质的,把它们拿出来放在一个地方,然后运行的时候自动装进去。

      有静态代理和动态代理两种模式。(当某种事务具有横切性的性质时候,我们就可以使用代理模式,好维护。例如在对数据库数据增删改之前进行安全性检查。那么这个安全性检查就可以单独抽出来,放入到单独的类中,使用动态代理更妙。)

     使用动态代理需要实现一个接口名叫:InvocationHandler。

     AOP的开发主要是找到横切性的关注点。例如检查安全性,记录日志

     Aspect:核心(发现切面)。

     Advise:对横切性的具体实现就叫做advice,advice可以分成before advice和after advice还有throw advice。

     PointCut:它定义了advice应用到了哪些JoinPoint上面,对Spring来说是方法调用。

     Weave:将advice应用到TargetObject上的过程,叫做植入,Spring支持的是动态织入。

     Target Object:advice被应用的对象。

     Proxy:Spring AOP默认使用jdk动态代理,他是运行的时候创建,也可以使用CGLIB代理。

     Introduction:可以动态的为类添加方法。

     代码示例:


        近期从回来的那些师哥师姐的身上看到了一些很神奇的现象,他们在技术分享的时候有的是一言不合就来张内存分析图,有的是一言不合就去看源码,还有的则是一言不合就来张思维导图。他们都找到了适合自己的快速入手的方法,而近期我则发现自己只有来个简单的例子,跟着代码一步步的走,清楚了数据环运动的流程,才真正的算是理解了这块的知识。也是在这个寻觅的过程中才明白了,世间鞋子万种,只有合脚的那双才是最好的俗语。

评论 20
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值