Spring AOP 小结

1.什么是AOP?

这里引用百度百科的解释,如图

2.AOP的作用

AOP采用横向抽取机制,补充了传统纵向继承体系(OOP)无法解决的重复性代码优化(性能监视,事务管理,安全检查等),一句话概括就是:将业务逻辑和系统处理的代码(关闭连接、事务管理、日志处理等)解耦。重复性代码被抽取出来之后,维护起来更加方便。

3.AOP的实现

(1)AspectJ(一个Java实现的AOP框架),AspectJ主要采用的是编译期织入,在这个期间使用AspectJ的acj编译器(类似javac)把aspect类编译成class字节码后,在java目标类编译时织入。这种方式的缺点是过于复杂,破坏封装,需要专门的Java编译器。

(2)Spring 基于AspectJ的AOP实现(通过动态代理技术实现的 ),其实就是Spring+AspectJ的整合。以下是一个简单的demo。

 

(a)  添加Spring和AOP相关的依赖

(b)  编写接口,目标类和方法

(c)  编写配置文件,配置目标类

(d)  编写通知类和增强方法(基于XML方式实现)

(e)  配置文件中配置通知类和切面

(f)  测试

 

以下再用基于注解的方式实现AOP

(1)目标类和切面类

(2)配置文件

(3)测试

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值