- 博客(7)
- 资源 (8)
- 收藏
- 关注
转载 Spring中的AOP(一)——AOP基本概念和Spring对AOP的支持
AOP的基本概念 AOP从运行的角度考虑程序的流程,提取业务处理过程的切面。AOP面向的是程序运行中的各个步骤,希望以更好的方式来组合业务逻辑的各个步骤。AOP框架并不与特定的代码耦合,AOP框架能处理程序执行中特定切入点,而不与具体某个类耦合(即在不污染某个类的情况下,处理这个类相关的切点)。下面是一些AOP的一些术语: 切面(Aspect):业务流程运行的某个特定步
2017-08-10 14:29:32 296
转载 Spring中的AOP(二)——基于Annotation的配置方式(一)
AspectJ允许使用注解用于定义切面、切入点和增强处理,而spring框架则可以识别并根据这些注解来生成AOP代理。Spring只是使用了和AspectJ 5一样的注解,但并没有使用AspectJ的编译器或者织入器,底层依然使用SpringAOP来实现,依然是在运行时动态生成AOP代理,因此不需要增加额外的编译,也不需要AspectJ的织入器支持。而AspectJ采用编译时增强,所以Aspect
2017-08-10 14:29:03 346
转载 Spring中的AOP(三)——基于Annotation的配置方式(二)
使用After增强处理 spring还提供了一个After增强处理,它与AfterReturning优点类似,但也有区别: AfterReturning增强处理只有在目标方法正确完成后才会被织入 After增强处理不管目标方法如何结束(正确还是异常),它都会被织入 正是因为这个特点,因此After增强处理必须准备处理正常返回和异常返回
2017-08-10 14:28:05 241
转载 Spring中的AOP(四)——在Advice方法中获取目标方法的参数
获取目标方法的信息 访问目标方法最简单的做法是定义增强处理方法时,将第一个参数定义为JoinPoint类型,当该增强处理方法被调用时,该JoinPoint参数就代表了织入增强处理的连接点。JoinPoint里包含了如下几个常用的方法: Object[] getArgs:返回目标方法的参数 Signature getSignature:返回目标方法的签名
2017-08-10 14:27:28 419
转载 Spring中的AOP(五)——定义切入点和切入点指示符
定义切入点 在前文(点击查看)中使用到的AdviceTest类中同一个切点(即* com.abc.service.*.advice*(..)匹配的连接点)却重复定义了多次,这显然不符合软件设计的原则,为了解决这个问题,AspectJ和spring都提供了切入点的定义。所谓定义切入点,其实质就是为一个切入点表达式起一个名称,从而允许在多个增强处理中重用该名称。 Spr
2017-08-10 14:26:19 509
转载 Spring中的AOP(六)——基于XML配置文件方式的AOP
除了前面介绍的基于JDK1.5的注解方式来定义切面,切入点和增强处理外,spring AOP也允许直接使用XML配置文件来管理它们。在JDK1.5之前,只能使用配置文件的方式来管理,在Spring2.X后提供了一个新的aop命名空间来定义切面、切入点和增强处理。 相比之下,使用XML配置文件方式有如下优点: 如果没有使用JDK1.5以上版本,只能使用XML配置文件的
2017-08-10 14:24:56 364
转载 Spring中的AOP(七)(实际上应该是一)——AspectJ的基本使用
AOP(Aspect Orient Programming),也就是面向切面编程,作为面向对象编程的一种补充,当前已经成为一种比较成熟的编程思想,其实AOP问世的时间并不长,甚至在国内的翻译还不太统一(另有人翻译为“面向方面编程”)。AOP和OOP(Object Orient Programming,面向对象编程)互为补充,OOP将程序分解成各个层次的对象,而AOP则将程序运行过程分解成各个切面。
2017-08-10 14:23:33 265
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人