目录
基于注解的AOP之准备工作以及各种通知
1. 技术说明
2. 准备工作
①添加依赖
②准备被代理的目标资源
3. 创建切面类并配置
在Spring的配置文件中配置:
4. 各种通知
各种通知的执行顺序:
<!-- spring-aspects会帮我们传递过来aspectjweaver -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aspects</artifactId>
<version>5.3.1</version>
</dependency>
public interface Calculator {int add(int i, int j);int sub(int i, int j);int mul(int i, int j);int div(int i, int j);
}
public class CalculatorImpl implements Calculator{public int add(int i, int j) {int result = i + j;System.out.println("方法内部,result:"+result);return result;}public int sub(int i, int j) {int result = i - j;System.out.println("方法内部,result:"+result);return result;}public int mul(int i, int j) {int result = i * j;System.out.println("方法内部,result:"+result);return result;}public int div(int i, int j) {int result = i / j;System.out.println("方法内部,result:"+result);return result;}
}
// @Aspect表示这个类是一个切面类
@Aspect
// @Component注解保证这个切面类能够放入IOC容器
@Component
public class LoggerAspect {}
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns=""xmlns:xsi=""xmlns:context=""xsi:schemaLocation=" .xsd .xsd"><!--基于注解的AOP的实现:1、将目标对象和切面交给IOC容器管理(注解+扫描)2、开启AspectJ的自动代理,为目标对象自动生成代理类3、将切面类通过注解@Aspect标识--><context:component-scan base-package="com.atguigu.spring.aop.annotation"></context:component-scan><!--开启基于注解的AOP功能--><aop:aspectj-autoproxy />
</beans>
本文发布于:2024-01-27 20:56:09,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/17063601992590.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |