2016-06-20 4 views
1

私は具象クラスの動的プロキシ作成に取り組んでいます。 javaのプレーンなProxyクラスはInterfacesだけに役立つので、私はCGLIbを選択しました。
私のプロキシのメソッドをインターセプトするためにMethodInterceptorでEnhancerクラスを使用しています。すべてのメソッド呼び出しを静的メソッドでインターセプトできます。

CGLIbを使用して静的メソッドへの呼び出しを傍受する方法はありますか?cglibで静的メソッドを傍受する

答えて

1

これは不可能です。cglib計測器クラスは、すべてのメソッドをオーバーライドしてインターセプトロジックを適用するサブクラスを作成することで可能です。これは、cglibがこれをサポートしないような静的メソッドでは不可能です。

+0

ありがとうございました! メソッドライブラリを変更せずにスタティック計測を行う方法は他にありません。私の理解は、Javaの助けを借りて、新しい定義でメソッドを書き換えることができるということです。しかし、私はjavaassistを使いたくありません。 –

+0

JavassistとByte Buddyを見ることができます。どちらも、クラスの再定義が可能にします。 –