AOP基础实现

面向切面编程的基本实现

  1. 在项目中导入必要的jar包

  1. 打开配置文件,引入aop命名空间

xmlns:aop="http://www.springframework.org/schema/aop"

http://www.springframework.org/schema/aop

http://www.springframework.org/schema/aop/spring-aop-4.1.xsd

  1. 启动Aspectj支持

<aop:aspectj-autoproxy/>

  1. 创建切面Bean

@Aspect

public class AopTest {}

  1. 定义切入点

 @Pointcut("execution(* com.langsin.vo.Axe.work(..))")

    public void myPointCut(){}

  1. 需要在配置文件中创建过滤器

在Spring框架中启动AspectJ之后,因为沿用了AspectJ的表达式,所以在Spring容器中需要对AspectJ的表达式语句进行一个过滤处理,可以通过使用context命名空间下的context:include标签进行一个过滤处理,处理类仍然是AspectJ框架的中org.aspectj.lang.annotataion.Aspect类。

 <context:component-scan base-package="com.langsin.vo">

       <context:include-filter type="annotation" expression="org.aspectj.lang.annotation.Aspect"/>

    </context:component-scan>

  1. Before增强处理

@Before("myPointCut()")

    public void beforeTest(){

     System.out.println("在目标方法执行之前,进行before增强处理");

    }

  1. After增强处理

 @After("myPointCut()")

    public void afterTest(){

     System.out.println("在目标方法执行之后,进行before增强处理");

    }

 

猜你喜欢

转载自blog.csdn.net/lxc_1206/article/details/81157531