1

InvocationHandler Springが作成/生成してからプロキシオブジェクトを作成するインターフェース実装を確認する方法は?

プロキシ オブジェクトには、この実装で呼び出されるコンストラクターがあります。

public Proxy(InvocationHandler paramInvocationHandler)  {

   super(paramInvocationHandler);

}
4

1 に答える 1

1

JDKdynamicAopProxy は InvocationHandler の実装です。これは、プロキシ オブジェクトを作成する通常の方法です。

public Object getProxy(ClassLoader classLoader) {
    if (logger.isDebugEnabled()) {
        logger.debug("Creating JDK dynamic proxy: target source is " + this.advised.getTargetSource());
    }
    Class[] proxiedInterfaces = AopProxyUtils.completeProxiedInterfaces(this.advised);
    findDefinedEqualsAndHashCodeMethods(proxiedInterfaces);
    return Proxy.newProxyInstance(classLoader, proxiedInterfaces, this);
}

classLoader、interfaces、InvocationHandler で引数を指定して Proxy のメソッドを呼び出すだけです。

于 2013-06-26T08:09:04.870 に答える