問題タブ [aop]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1946 参照

java - コンパイルされたJavaクラスの動作をaspectJですばやく変更する方法

いくつかのJavaアプリケーションに一時的に機能を追加するためにaspectJを使用する方法は? アスペクトの作成、ajc でのコンパイル、java コマンドと追加のスイッチを使用してアスペクトを適用するようなものですか?

0 投票する
2 に答える
4705 参照

hibernate - CurrentSessionContext/SpringSessionContext を HibernateDaoSupport と一緒に使用して getCurrentSession() への呼び出しをインターセプトする方法

Spring-Hibernate 統合のために、Spring で HibernateDaoSupport を使用しています。すべての getCurrentSession 呼び出しをインターセプトし、フィルターを有効にして、フィルター パラメーター値を設定する必要があります。

Hibernate は、getCurrentSession 呼び出しをインターセプトする CurrentSessionContext impl をサポートしています。Spring は、SpringSessionContext と呼ばれるこれの実装を提供します。しかし、HibernateDaoSupport を使用する場合、Spring には独自の SessionHolder メカニズムがあり、getCurrentSession() は呼び出されず、インターセプトは機能しません。これに対する回避策はありますか?

0 投票する
3 に答える
925 参照

spring - Spring 依存性注入またはアスペクト プログラミング

特定の前後のパターンに常に従わなければならないいくつかのクラスのメソッドが必要です。

public void method(X x, Y y ) {

// ************繰り返し部分開始 ******************/

AFrameworkClass aFrameworkClass = new AFrameworkClass (this.memberVariable,"SomeString");

試す {

// ************繰り返し部分終了 ******************/

// ************繰り返し部分開始 ******************/

} 最後に { aFrameworkClass.doCleanup();

}

// ************繰り返し部分終了 ******************/

}

Spring フレームワークを使用して、このメソッドの繰り返し部分のロジックを、さまざまなクラスで何度も何度もコード化することなく実現することはできますか? もしそうなら、どのように?

0 投票する
2 に答える
7548 参照

java - Spring AOP でポイントカットが機能しない

Spring AOP を使用してロギングを実装するために、次の簡単な手順に従いました。しかし、それは機能していないようです。どんな助けでも役に立ちます

1) MyLoggingAspectクラスの作成

}

2)ログが必要なクラス( TixServiceImpl )を作成しました

3) spring-aspectj.xmlファイルを作成

4) 簡単なテスト クライアント ( TixClient )を作成しました。

5)次の出力が得られます

0 投票する
6 に答える
1234 参照

c# - C# 向けのオープン ソースのアスペクト指向ライブラリの提案

C# 用のオープン ソースのアスペクト指向ライブラリに関する提案。ありがとう

0 投票する
3 に答える
663 参照

c# - Spring.Net の再帰メソッドにアドバイスを注入しますか?

AOP に対する Spring.NET のサポートを使用して、依存関係の注入/制御の反転/アスペクト指向プログラミングを実行しようとしています (たくさんの流行語で申し訳ありませんが、誰かに違いを明確にするように求める別の質問を投稿するかもしれません :) ) .

具体的には、メソッドが呼び出されるたびに AOP アドバイス/インターセプターが呼び出されるように、再帰的なメソッド呼び出しをインターセプトしたいと考えています。

Spring.Net は、最初のメソッド呼び出し以外は傍受していないようです。Spring.Netはインスタンスごとに正確に 1 つのインターセプター チェーンを維持しており、最初のメソッド呼び出しが完了するまでインターセプターをこれ以上呼び出さないと思います。

再帰呼び出しを含む、すべてのメソッド呼び出しに対してインターセプター (アドバイス) をトリガーすることに関する情報はありますか?

役立つ場合は、コード/出力例を提供できます。ありがとう!

0 投票する
1 に答える
1554 参照

java - サードパーティ クラスの AOP

私は春にAOPを実際の問題なく使用しましたが、主にトランザクション管理に使用されており、魅力的です。

私の質問はこれです...これまでに私が見た AOP の唯一の例は、自分で作成したクラスをポイントカットすることです。データベース接続クラスなど、サードパーティ ライブラリ内のクラスをポイントカットすることは可能ですか。コンテキストは、いくつかのログを作成し、Oracle データ ソースがデータベースへの呼び出しを実行したときに情報を収集したいということです。残念ながら、これは Oracle クラス ファイルのスタックに含まれています。SQL が実行されたときに、このクラス/メソッドをどのようにポイントカットしますか?

0 投票する
3 に答える
5217 参照

c# - PostSharp のクールな側面

PostSharp の興味深い側面を探しています。役に立ち、共有してもかまわないものなら何でも。

0 投票する
2 に答える
3650 参照

java - 選択したメソッドをプロファイリングするには、aspectj を使用します

ライブラリをプロファイリングするために、aspectj を使用したいと思います。私の計画は、プロファイリングが必要なメソッドを注釈でマークすることでした:

@Profiled("logicalUnitOfWork")

logicalUnitOfWorkそして、 を使用してプロファイリングされたコンテンツを強調表示するメソッドの前後に起動するアスペクトを用意します。

したがって、最初のポイントカットは次のようになります。ここには注釈の引数がないことに注意してください。これは、どうすればよいかわからないことの 1 つです。

プロファイリングされるメソッドは、次のように定義されます。

要するに、@Profiledアノテーションの値をアスペクトに取り込むにはどうすればよいですか? 値に基づいてどのプロファイリングが発生するかを制限する必要はありません。アドバイスに表示される必要があるだけです。また、これを機能させるには、アノテーションの保持をランタイムに設定する必要がありますか、または代わりにクラスレベルの保持を使用できますか?