首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

Spring入门Blog[7、Spring Aop的理解和简单实现]

2012-08-03 
Spring入门Blog[七、Spring Aop的理解和简单实现]1、AOP概念所说的面向切面编程其实就是在处理一系列业务逻

Spring入门Blog[七、Spring Aop的理解和简单实现]

1、AOP概念

所说的面向切面编程其实就是在处理一系列业务逻辑的时候这一系列动作看成一个动作集合。比如连接数据库来说:

加载驱动-----获取class--------获取连接对象-------访问数据库------查询---------操作结果

对于上面的这一系列动作我们把其中的虚线看成是一个个的切面。然后我们在虚线的位置上加入一些逻辑。哪怕是日志,这也就成就了在不知不觉中将逻辑处理加入到了相应的位置上。而形成了所谓的面向切面编程!



下面通过@Before演示Aop织入到方法之前执行一些逻辑



注意:

在编写过程中的织入点语法上指定before织入哪个方法的前面。而括号中的这个被指定的织入点最好是实现一个接口。如果不实现接口的话就会报异常为:

Cannot proxy target class because CGLIB2 is not available.Add CGLIB to the class path or specify proxy interfaces

这个异常的解决办法为:

加入cglib.jar。因为被织入对象的方法单位如果没有实现接口的话它就需要cglib.jar的支持。

 

AOP基本概念:

JoinPoint:切入点、可以理解为上面案例的HelloWorld方法之前就为一个Joinpoint

Pointcut:切入点的集合,可以通过织入点语法定义N个切入点加入逻辑处理。

Aspect:切面,指的是切面的类。也就是上面声明Aspect的逻辑集合

Advise:指的是切面上的逻辑比如@Before、@After

Target:被代理对象.上面的案例指的是UserServiceImpl

Weave:织入


热点排行