Java 代理总结
来源:互联网 发布:2016小说改编的网络剧 编辑:程序博客网 时间:2024/06/07 19:11
一、代理
为其他对象提供一种代理以便控制对这个对象的访问。
(1)静态代理
(2)动态代理
1)JDK自带的动态代理
2)javaassist字节码操作库实现
3)CGLIB
4) ASM(底层使用指令,可维护性较差)
二、静态代理
静态代理模式一般会有三个角色:
抽象角色:指代理角色和真实角色对外提供的公共方法,一般为一个接口
真实角色:需要实现抽象角色接口,定义了真实角色所要实现的业务逻辑,以便供代理角色调用。也就是真正的业务逻辑在此。
代理角色:需要实现抽象角色接口,是真实角色的代理,通过真实角色的业务逻辑方法来实现抽象方法,并可以附加自己的操作。
三、动态代理
(1)Proxy
InvocationHandler接口
.invoke(Object proxy,Method moehtod,Object[] args) 代理执行接口拦截方法
Proxy
.newProxyInstance(ClassLoader loader,Class[] interfaces,Invcationhandler handler) 创建动态代理实例
(2)CGLIB
MethodInterceptor
- intercept(Object obj,Method method,Object[] args,MethodProxy proxy) Object 拦截方法
Enhancer
- setSuperClass(Class superClass) 设置父类
- setCallback(CallBack callBack) 设置回调拦截器
- setClassLoader(ClassLoader loader)
- create() Object 创建代理对象
MethodProxy
- invokeSuper(Object obj,Object[] args) Object 执行代理对象
- invoke(Object target,Object[] args) Object 执行被代理对象
阅读全文
0 0
- java动态代理总结
- Java总结(20) 代理
- java代理模式总结
- Java动态代理总结
- java代理机制总结
- Java动态代理总结
- Java 代理模式总结
- Java 代理总结
- Java 代理总结
- [Java] 动态代理 小小总结
- 黑马程序员-java代理总结
- java中代理模式总结
- JAVA几种代理总结
- java动态代理的总结
- java动态代理简单总结
- JAVA动态代理简单总结
- Java代理模式分析总结
- Java代理(jdk静态代理、动态代理和cglib动态代理)实例及总结
- Java 线程同步总结
- Java 类加载总结
- Java 反射总结
- Java 注解总结
- webRTC base模块CritScope临界锁的实现
- Java 代理总结
- Java Socket编程总结
- 深入了解PHP【工作原理】
- Java Servlet总结
- Java 高并发下的实践
- Java GC总结
- Java 内存泄露总结
- System.gc()调用
- 毕业设计的十大问题