Spring-Aop
来源:互联网 发布:神之浩劫数据迁移 编辑:程序博客网 时间:2024/06/18 02:07
动态代理
- 只学一个方法
方法的作用:在运行时,动态创建一组指定的接口的实现类对象!(在运行时,创建实现了指定的一组接口的对象)
interface A {
}
interface B {
}
Object o = 方法(new Class[]{A.class,B.class})
o它实现了A和B两个接口!
Object proxyObject = Proxy.newProxyInstance(ClassLoader classLoader, Class[] interfaces, InvocationHandler h);
1. 方法作用:动态创建实现了interfaces数组中所有指定接口的实现类对象!
参数;
1. ClassLoader:类加载器!
* 它是用来加载器的,把.class文件加载到内存,形成Class对象!
2. Class[] interfaces:指定要实现的接口们
3. InvocationHandler:代理对象的所有方法(个别不执行,getClass())都会调用InvocationHandler的invoke()方法。
- 动态代理作用
最终是学习AOP(面向切面编程),它与装饰者模式有点相似,它比装饰者模式还要灵活!
InvocationHandler
public Object invoke(Object proxy, Method method, Object[] args);
这个invoke()方法在什么时候被调用!
1. 在代理对象被创建时?错误的!
2. 在调用代理对象所实现接口中的方法时?正确的!
- Object proxy:当前对象,即代理对象!在调用谁的方法!
- Method method:当前被调用的方法(目标方法)
- Object[] args:实参!
目标对象:被增强的对象
代理对象:需要目标对象,然后在目标对象上添加了增强后的对象!
目标方法:增强的内容
代理对象 = 目标对象 + 增强
{
增强的手段:
1. 继承
*被增强对象不可变
*增强内容不可变
2. 装饰者模式
*被增强对象可变
*但增强内容不可变
3. 动态代理
*被增强对象可变
*增强内容可变
}
- AOP、Spring的AOP
- AOP--Spring AOP
- Spring AOP 嵌套AOP
- spring AOP
- Spring AOP
- Spring AOP
- spring aop
- Spring AOP
- spring AOP
- spring aop
- Spring aop
- Spring-AOP
- Spring AOP
- spring aop
- spring aop
- Spring AOP
- Spring AOP
- Spring Aop
- java线程的六大状态
- Activity的启动模式一些小重点
- ElasticSearch中From / Size介绍
- iOS用runtime给一个类动态添加方法 ---class_addMethod
- 一道内存的硬件选料题
- Spring-Aop
- Codeforces Round #424(Div.2)
- Codeforces 831D Office Keys 二分+贪心
- 在LaTeX中优雅地插入代码,并使用Consolas字体!
- Codeforces Round #424(A+B)
- Oracle OGG安装,很简单,监控比较复杂
- 自定义gradle插件
- Spring RMI API调用 不用配置文件xml
- [leetcode]120. Triangle(Java)