0
主題名稱可能不好。我試圖解釋清晰度。如何在方面調用掛鉤類的方法?
我有類:
public class A(){
Field1 field1;
Field2 field2;
public void method1(){...}
public void method2(){...}
public void sourceMethod(ParameterClass parameter1){
//some code
method1();
//some code
method2();
//some cdoe
}
}
我將鉤源法: ...
@Around(value = "execution(* A.sourceMethod(ParameterClass))")
public void aroundSourceMethod(JoinPoint joinPoint){
//I need to write my realization sourceMethod here
// I want to invoke method1 and method2 here
}
在這裏,我要重寫所有的代碼。但我需要調用method1()
和method2()
是否可能使用AspectJ?
你想達到什麼目的?你想在調用sourceMethod()之前執行'method1()'和'method2()'方法嗎?通過寫一個'@ Around'的建議?在這種情況下,爲什麼不使用'@ Before'。另外,aspectJ只會提供一個攔截機制。調用必須通過反射來實現。這與AspectJ – Hrishikesh
無關,這種方法寫得不好。我需要完全重寫 – gstackoverflow
但是,如果您正在編寫方法的周圍,那麼不會從未執行的方法轉義。你可能會最終執行兩次'method1()'和'method2()'。因爲,即使你的程序編入了方面,你的程序實際上也會進入'sourceMethod()'。 – Hrishikesh