JavaEE之动态代理

Posted 终难遇

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaEE之动态代理相关的知识,希望对你有一定的参考价值。

jdk动态代理主要使用的是java反射机制(既java.lang.reflect包)

动态代理:程序运行时,使用JDK提供工具类(Proxy),动态创建一个类,此类一般用于代理。

代理类需要实现InvocationHandler接口,并重写invoke方法,invoke方法中的参数由系统底层生成,不需要自己给出,只需要利用method方法用于重写方法就好.

Object proxyObj = Proxy.newProxyInstance(参数1,参数2,参数3);

参数1:ClassLoader,负责将动态创建类,加载到内存。当前类.class.getClassLoader();

参数2:Class[] interfaces ,代理类需要实现的所有接口(确定方法),被代理类实例.getClass().getInterfaces();

参数3:InvocationHandler, 请求处理类,代理类不具有任何功能,代理类的每一个方法执行时,调用处理类invoke方法。

voke(Object proxy ,Method ,Object[] args)

                 参数1:代理实例

                 参数2:当前执行的方法

                 参数3:方法实际参数。

 

 

 

 

以上是关于JavaEE之动态代理的主要内容,如果未能解决你的问题,请参考以下文章

java动态代理

设计模式之动态代理

动态代理之 CGLIB 动态代理

代理模式之JDK动态代理

AOP之JDK动态代理和CGLib动态代理

SpringCloud系列之Feign-4.Feign的动态代理