即通过XML文件来配置切面和通知:
<aop:config> <aop:aspect id="loggingAspect" ref="loggingAspectBean"> <aop:pointcut expression="execution(* com.example.UserService.*(..))" id="userServicePointcut"/> <aop:before pointcut-ref="userServicePointcut" method="beforeAdvice"/> <aop:after-returning pointcut-ref="userServicePointcut" method="afterReturningAdvice"/> </aop:aspect> </aop:config> <bean id="loggingAspectBean" class="com.example.LoggingAspect"/>
即通过注解来标注切面和通知:
@Aspect @Component public class LoggingAspect { @Pointcut("execution(* com.example.UserService.*(..))") public void userServicePointcut() {} @Before("userServicePointcut()") public void beforeAdvice() {} @AfterReturning("userServicePointcut()") public void afterReturningAdvice() {} }