基于Java的AOP编程技术详解
需积分: 13 66 浏览量
更新于2024-07-25
收藏 1.31MB PDF 举报
Java Spring Day02 - AOP 编程
本节课程主要介绍了 Aspect-Oriented Programming(AOP)编程的基本概念和应用,包括 AOP 的定义、AOP 相关概念、通知类型、切入点表达式等。
**什么是 AOP 及其好处**
AOP(Aspect-Oriented Programming)是面向方面编程或面向切面编程,关注点是共同处理,可以通过配置将其作用到某一个或多个目标对象上。AOP 的好处是实现组件重复利用,改善程序结构,提高灵活性,将共通组件与目标对象解耦。
**AOP 相关概念**
1. Aspect(切面):指的是共通业务处理,可以切入到多个目标对象,可多次使用。
2. JoinPoint(连接点):指的是切面组件在目标对象上作用的位置,例如:方法上或发生异常。
3. Pointcut(切入点):切入点是连接点的集合,采用表达式指定。
4. TargetObject(目标对象):目标对象是指被切面组件所作用的对象。
5. Advice(通知):指的是切面组件在连接点上执行的动作,例如:在方法调用前、方法调用后、方法调用前后等。
6. AutoProxy(动态代理):采用了 AOP 之后,容器返回的对象是代理对象。用户在使用时,由代理对象调用切面组件和目标对象的功能。
**通知类型**
通知类型是 AOP 中的一种重要概念,共有五种:
1. Before Advice(前置通知):在目标对象的方法调用前执行。
2. After Advice(后置通知):在目标对象的方法调用后执行。
3. Around Advice(环绕通知):在目标对象的方法调用前和调用后执行。
4. Throws Advice(异常通知):在目标对象的方法调用时抛出异常时执行。
5. After Returning Advice(返回通知):在目标对象的方法调用后返回时执行。
**切入点表达式**
切入点表达式是 AOP 中用来指定切入点的表达式,例如: execution(* *(..)),指定所有方法的切入点。
**AOP 演示**
在 Spring 框架中,AOP 的实现是通过 AspectJ 库来实现的,需要导入相关的 Jar 包,例如:aspectjrt.jar 和 aspectjweaver.jar。同时,为了实现动态代理,需要导入 cglib.jar。
在演示中,我们新建了一个 Spring 项目,创建了一个 UserService 接口和实现类,并使用 AOP 来实现日志记录功能。
2013-05-08 上传
2023-05-31 上传
2023-03-24 上传
2023-07-22 上传
2023-11-03 上传
2023-08-31 上传
2023-07-14 上传
2023-06-06 上传
xiao9in
- 粉丝: 2
- 资源: 88
最新资源
- 新型智能电加热器:触摸感应与自动温控技术
- 社区物流信息管理系统的毕业设计实现
- VB门诊管理系统设计与实现(附论文与源代码)
- 剪叉式高空作业平台稳定性研究与创新设计
- DAMA CDGA考试必备:真题模拟及章节重点解析
- TaskExplorer:全新升级的系统监控与任务管理工具
- 新型碎纸机进纸间隙调整技术解析
- 有腿移动机器人动作教学与技术存储介质的研究
- 基于遗传算法优化的RBF神经网络分析工具
- Visual Basic入门教程完整版PDF下载
- 海洋岸滩保洁与垃圾清运服务招标文件公示
- 触摸屏测量仪器与粘度测定方法
- PSO多目标优化问题求解代码详解
- 有机硅组合物及差异剥离纸或膜技术分析
- Win10快速关机技巧:去除关机阻止功能
- 创新打印机设计:速释打印头与压纸辊安装拆卸便捷性