Spring学习之使用XML配置AOP
前言
在前面一个小节里,主要学习了切入点表达式的相关概念以及编写方法,并且学习了通过注解的方式来配置AOP,通过注解配置的方式可以说是最简单,也是最常使用的,在日常开发中,使用的频率也是最高的,不过由于注解是在JDK5之后引入的,所以如果是使用之前版本的JDK,是无法通过这种方式来配置的,所以,接下来我们来看下如何通过XML配置的方式配置AOP
通过XML配置AOP
由于关于AOP的相关概念已经基本上介绍过了,所以直接演示使用XML配置AOP
<aop:config>
<!--配置全局切点-->
<aop:pointcut id="pointcut" expression="execution(* cn.xuhuanfeng.aop..*.UserService+.*(..))"/>
<!--配置切面,可以有多个切面嘛, 并且指定所要使用的增强-->
<aop:aspect ref="logManager">
<!--配置切面内部的切点,用于匹配对应的调用方法-->
<aop:pointcut id="pointcut2" expression="execution(* cn.xuhuanfeng.aop..*.UserService+.*(..))"/>
<!--指定方位信息以及对应的切点-->
<aop:after method="log" pointcut-ref="pointcut2"/>
<aop:after-returning method="log" pointcut-ref="pointcut2"/>
<aop:after-throwing method="log" pointcut-ref="pointcut2"/>
<aop:before method="log" pointcut-ref="pointcut2"/>
</aop:aspect>
</aop:config>
通过aop命名空间来配置对应的切面信息,基本上的配置如上代码所示,可以看到,通过XML配置的方式跟通过注解配置的思路是一致的,先配置对应的切点,编写切点表达式,然后指定增强,以及对应的方位信息和所要使用的切点
总结
本小节简单的通过XML配置aop来学习使用XML配置AOP,不过这种方式相对于注解而言是比较繁琐的,一般情况下,我们会优先使用注解的方式,然后通过XML的方式进行辅助