用例子直接说明:
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd"> <bean id="arithmeticCalculator" class="com.jeremy.aop.xml.ArithmeticCalculatorImpl"></bean> <!-- 第一步配置Bean,因为切面也是一个Bean --> <bean id="loggingAspect" class="com.jeremy.aop.xml.LoggingAspect"></bean> <!-- 第二部配置AOP --> <aop:config> <!-- 第三步配置切面使用的表达式 --> <aop:pointcut expression="execution(* com.jeremy.aop.xml.ArithmeticCalculator.*(..))" id="pointcut"/> <!-- 第四步配置切面,指定切面类 --> <aop:aspect ref="loggingAspect"> <!-- 第五步配置通知 --> <aop:before method="beforeMethod" pointcut-ref="pointcut"/> <aop:after method="afterMethod" pointcut-ref="pointcut"/> <!-- returning:代表返回的值,记得要和通知的方法哪个参数保持一致,其实跟注解一样的,注解的本质就是基于xml配置的 --> <aop:after-returning method="AfterReturning" pointcut-ref="pointcut" returning="result"/> <!-- e:代表着要传递的异常 --> <aop:after-throwing method="AfterThrowing" pointcut-ref="pointcut" throwing="e"/> </aop:aspect> </aop:config> <bean id="validateAspect" class="com.jeremy.aop.xml.validateAspect"></bean> </beans>
时间: 2024-10-10 04:35:24