0

Spring-AOP チュートリアルを読みました。私が理解したのは、メソッドをインターセプトするには、メソッドを含むクラスのオブジェクトをインスタンス化する Java ファイルを作成する必要があるということです。次に、そのクラスのメソッドを呼び出します。同時に、メソッドを持つクラスの Bean を含む xml 構成ファイルが作成されます。そして、インターセプターメソッドのクラスがあります。最初に言及した Java ファイルには main メソッドがあり、これを Java アプリケーションとして実行してインターセプトを開始します。ここまでは明らかです。

これで、複数の .class ファイルを含む jar ができました。各 .class ファイルにはいくつかのメソッドが含まれています。実行時にこれらすべてのメソッドを 1 つずつインターセプトする必要があります。上記の私の理解から、これらのクラスのオブジェクトを Java ファイルでインスタンス化する必要があります。次に、その Java ファイルを最初に実行します。しかし、私が持っている jar は Web アプリであり、.class ファイルが呼び出される順序がわかりません。ファイルは、Web ユーザーの使用状況に応じて呼び出されます。このシナリオでは、クラス ファイルのインスタンス化されたオブジェクトを含む Java ファイルを作成するにはどうすればよいですか?

ここに案内してください。前もって感謝します!

4

1 に答える 1

0

Spring AOP は、Spring IC コンテナーによって Spring コンテキストから定義およびインスタンス化されたオブジェクトでのみ機能します。

JVM インスツルメンテーション API を使用できます。これにより、http://commons.apache.org/proper/commons-bcel/などのライブラリを使用してロードされているクラスを変更できます。ここの例を参照してくださいhttp://blog.javabenchmark.org/2013/05/java-instrumentation-tutorial.html

于 2013-11-15T08:38:20.500 に答える