Spring学习-16:AOP的概述
来源:互联网 发布:python学习教程 编辑:程序博客网 时间:2024/06/05 05:36
1.1 AOP的概述:
1.1.1 什么是AOP:
AOP Aspect Oriented Programing 面向切面编程
AOP采取横向抽取机制,取代了传统纵向继承体系重复性代码(性能监视、事务管理、安全检查、缓存)
Spring AOP使用纯Java实现,不需要专门的编译过程和类加载器,在运行期通过代理方式向目标类织入增强代码
AspecJ是一个基于Java语言的AOP框架,Spring2.0开始,Spring AOP引入对Aspect的支持,AspectJ扩展了Java语言,提供了一个专门的编译器,在编译时提供横向代码的织入
1.1.2 AOP底层原理;
就是代理机制:
* 动态代理:(JDK中使用)
* JDK的动态代理,对实现了接口的类生成代理.
1.1.3 Spring的AOP代理:
JDK动态代理:对实现了接口的类生成代理
CGLib代理机制:对类生成代理
1.1.4 AOP的术语:
Joinpoint(连接点):所谓连接点是指那些被拦截到的点。在spring中,这些点指的是方法,因为spring只支持方法类型的连接点.
Pointcut(切入点):所谓切入点是指我们要对哪些Joinpoint进行拦截的定义.
Advice(通知/增强):所谓通知是指拦截到Joinpoint之后所要做的事情就是通知.通知分为前置通知,后置通知,异常通知,最终通知,环绕通知(切面要完成的功能)
Introduction(引介):引介是一种特殊的通知在不修改类代码的前提下, Introduction可以在运行期为类动态地添加一些方法或Field.
Target(目标对象):代理的目标对象
Weaving(织入):是指把增强应用到目标对象来创建新的代理对象的过程.
spring采用动态代理织入,而AspectJ采用编译期织入和类装在期织入
Proxy(代理):一个类被AOP织入增强后,就产生一个结果代理类
Aspect(切面): 是切入点和通知(引介)的结合
- Spring学习-16:AOP的概述
- spring学习4-AOP概述
- Spring学习4:AOP概述
- Spring的AOP学习
- Spring aop术语概述
- Spring AOP概述
- Spring AOP 概述
- Spring AOP 概述
- Spring AOP 概述
- Spring AOP概述
- Spring aop概述-1
- Spring AOP 概述
- Spring-AOP概述
- 【Spring】AOP概述
- Spring的AOP学习笔记
- Spring中AOP的学习
- spring的AOP学习1
- Spring-----16、Spring的AOP
- 《背影》英文
- vijos1984—— 随机树
- 数组下标越界异常
- LCS-最长公共子序列
- Django 使用以及mod-wsgi(一)
- Spring学习-16:AOP的概述
- SpringBoot 之 第三方Json解析框架FastJson的使用
- 复数的运算(类和对象)
- web项目集成kettle的作业报错
- Mac ssh连不上的解决方法
- iOS CocoaPods 私有库 steps and tips
- 递推递归练习M数值分解
- JAVA判断当前日期是节假日还是工作日
- python数据类型