Java代理简介
代理对象:
1、代理对象存在的价值主要用于拦截对真实业务对象的访问。
2、代理对象应该具有和目标对象相同的方法。
代理分类:
1、静态代理
2、动态代理
静态代理的实现P:
JDK动态代理实现原理:
java在JDK1.5之后提供了一个“java.lang.reflect.Proxy”类,通过
“Proxy”类提供的一个newProxyInstance方法用来创建一个对象的代理
对象。
AOP即面向切面编程
AOP中的核心概念
连接点(JoinPoint): 程序执行的某一个特定位置,即类某一个方法调用前/调用后,方法抛出异
常后,一个类或一段程序代码拥有一些具有边界性质的特定点。Spring仅支持方法连接点。
切点: 连接点的集合
增强: 切点处要执行的代码
目标对象: 增强逻辑的织入目标类
引介:一种特殊的增强,它为类添加一些属性和方法.这样,即使一个业务类原本
没有实现某一个接口,通过AOP的引介功能,也可以动态地为该业务类添加接口的实现逻辑.
让业务类成为这个接口的实现类.
织入:织入是将增强添加到目标类具体链接点上的过程,即通知执行到切点的过程。
代理: 增强后的代理类
切面: 由增强(或通知)和切点共同组成。
xml实现SpringAOP
1 引入AOP相关依赖
2 创建目标类(被增强类)
3 编写增强方法
4 Spring配置文件配置织入过程