spring AOP之增强类型

>

spring使用增强类定义横切逻辑,同时由于spring只支持方法连接点,增强还包括了在方法的哪一点加入横切代码的方位信息,所以增强既包含横切逻辑,还包含部分连接点的信息。

spring目前支持5种类型增强:

  • 前置增强:org.springframework.aop.BeforeAdvice代表前置增强,因为spring只支持方法级的增强,所以MethodBeforeAdvice是目前可用的前置增强,表示在目标方法执行前实施增强,而BeforeAdvice是为了将来版本扩展需要而定义的。
  • 后置增强:org.springframework.aop.AfterReturningAdvice代表后增强,表示在目标方法执行后实施增强。
  • 环绕增强:org.aopalliance.intercept.MethodInterceptor代表环绕增强,表示在目标方法执行前后实施增强。
  • 异常抛出增强:org.springframework.aop.ThrowsAdvice代表抛出异常增强,表示在目标方法抛出异常后实施增强。
  • 引介增强:org.springframework.aop.IntroductionInterceptor代表引介增强,表示在目标类中添加一些新的方法和属性。

注:这是spring aop的最早实现,需要扩展这些接口来创建增强,不过现在新版本中已经不再需要这样做了!

spring AOP之增强类型,布布扣,bubuko.com

时间: 2024-10-11 04:37:52

spring AOP之增强类型的相关文章

Spring学习(二十五)Spring AOP之增强介绍

课程概要: Spring AOP的基本概念 Spring AOP的增强类型 Spring AOP的前置增强 Spring AOP的后置增强 Spring AOP的环绕增强 Spring AOP的异常抛出增强 Spring AOP的引介增强 一.Spring AOP增强的基本概念 Spring当中的专业术语-advice,翻译成中文就是增强的意思. 所谓增强,其实就是向各个程序内部注入一些逻辑代码从而增强原有程序的功能. 二.Spring AOP的增强类型 首先先了解一下增强接口的继承关系 如上图

Spring AOP 创建增强类

AOP联盟为增强定义了org.aopalliance.aop.Advice接口,Spring支持5种类型的增强:  1)前置增强:org.springframework.aop.BeforeAdvice 代表前置增强,因为Spring 只支持方法级的增强,所有MethodBeforeAdvice是目前可用的前置增强,表示在目标方法执行前实施增强,而BeforeAdvice是为了将来版本扩展需要而定义的:  2)后置增强:org.springframework.aop.AfterReturning

spring AOP 前置增强,后置增强小Demo

服务员接口 Waiter.java package com.paic.zhangqi.spring.aop; public interface Waiter { void greetTo(String name); void serveTo(String name); } 服务员接口实现类 NaiveWaiter.java package com.paic.zhangqi.spring.aop; public class NaiveWaiter implements Waiter { @Over

spring AOP 环绕增强小Demo

前面写了一个前置增强,后置增强的小demo,前置增强即在方法调用前对方法增强:后置增强即在方法调用后对方法增强.环绕增强允许在目标类方法调用前后织入横切逻辑,它综合了前置.后置增强两者的功能. 还继续沿用之前的代码,这里介绍环绕增强的实现类和测试类. 环绕增强类 GreetingAroundAdvice.java package com.paic.zhangqi.spring.aop; import org.aopalliance.intercept.MethodInterceptor; imp

Spring aop——前置增强和后置增强 使用注解Aspect和非侵入式配置

AspectJ是一个面向切面的框架,它扩展了java语言,定义了AOP语法,能够在编译期提供代码的织入,所以它有一个专门的编译器用来生成遵守字节码字节编码规范的Class文件 确保使用jdk为5.0以上版本. 01.使用注解标注增强(AspectJ)  :取代了配置文件中的aop:pointcut节点的配置 添加jar和log4j的配置文件 aspectj-1.8.7.jar aspectjweaver.jar 添加头文件: xmlns:aop="http://www.springframewo

spring中的增强类型

在spring中有两种增强方式:XML配置文件和注解配置.下面一次为大家讲解. 使用的是Aspectj第三方框架 纯POJO (在XML中配置节点) 使用@AspectJ,首先要保证所用的JDK 是5.0或以上版本 1)首先,创建一个切入点MyAspect,代码如下: 1 public class MyAspect { 2 // 前置通知 3 public void myBefore() { 4 System.out.println("这是前置增强"); 5 } 6 //前置通知带参

Spring AOP 五大通知类型

1.前置通知 在目标方法执行之前执行执行的通知. 前置通知方法,可以没有参数,也可以额外接收一个JoinPoint,Spring会自动将该对象传入,代表当前的连接点,通过该对象可以获取目标对象 和 目标方法相关的信息. 注意,如果接收JoinPoint,必须保证其为方法的第一个参数,否则报错. 配置方式: <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.spr

spring AOP 前后增强 实现的接口

执行前增强:org.springframework.aop.MethodBeforeAdvice,重写方法:public void before(Method args0,Object[] args1,Object args2); 执行后增强:org.springframework.aop.AfterReturningAdvice,重写方法:public void afterReturning(Object args0,Method args1,Object[] args2); 方法任意增强.前

spring AOP advice 类型 和 通用的切点的配置方式

spring aop advice的类型: 1.前置通知(before advice) 2.返回后通知(after returning advice) 3.抛出异常后通知(after throwing advice) 4.后通知:(after[finally] advice) 5.环绕通知:(around advice) ASpectJ和spring AOP 都支持的pointcut的配置方式: 1.execution(public * *(..))--->public的方法 2.executi