天天看点

第三章 AOP 通过Java API创建增强3.3.1增强类型 3.3.2前置增强 3.3.3后置增强 3.3.4环绕增强 3.3.5异常抛出增强 3.3.6引介增强

前置增强:org.springframework.aop.methodbeforeadvice

后置增强:org.springframework.aop.afterreturningadvice

环绕增强:org.aopalliance.intercept.methodinterceptor

异常抛出增强:org.springframework.aop.throwsadvice

引介增强:org.springframework.aop.support.delegatingintroductioninterceptor

就是在连接点方法执行之前执行的内容。

如:我们在userdaoimpl的save()方法执行之前执行一些内容。

public interface userdao {    

    public void save();    

}    

public class userdaoimpl implements userdao {    

    public void save() {    

        system.out.println("保存用户...");    

    }    

}    

b、创建一个增强类实现methodbeforeadvice接口

c、配置

d、main方法中测试

f、结果

就是在连接点方法执行之后执行的内容。

b、创建一个增强类实现afterreturningadvice接口

环绕增强与struts2的aop类似。

b、创建一个增强类实现methodinterceptor接口

就是在方法出现异常之后执行的代码。

b、创建一个增强类实现throwsadvice接口

     引介增强是为目标类创建新的方法和属性,引介增强的连接点是类级别的,不是方法级别的。通过引介增强,我们可以为目标类添加一个接口的实现,即原来目标类未实现某个接口,通过引介增强可以为目标类创建实现某个接口的代理。

b、新建一个接口ainterface

c、增强类继承delegatingintroductioninterceptor实现ainterface

d、配置

e、main方法中测试