呼び出し元をSpring AOPプロキシに取得する
質問
呼び出し元クラスを出力するMethodInterceptorを開発する方法を探しています。
呼び出し元オブジェクトをメソッドインターセプターに取り込む方法はありますか?
解決
これは機能し、例外を宣言し、それを使用してメソッドがインターセプトされた時点でスタックを見ることができます:
Throwable t = new Throwable();
StackTraceElement[] elements = t.getStackTrace();
String calleeMethod = elements[0].getMethodName();
String callerMethodName = elements[1].getMethodName();
String callerClassName = elements[1].getClassName();
System.out.println("CallerClassName=" + callerClassName + " , Caller method name: " + callerMethodName);
System.out.println("Callee method name: " + calleeMethod);
他のヒント
スタックトレースを生成して検査することで粗雑なことができますが、それは見苦しいです
所属していません StackOverflow