Ich versuche, eine benutzerdefinierte Anmerkung zu implementieren, die wie etwas aussieht aufzurufen:Java benutzerdefinierte Anmerkung eine andere Methode vor dem Aufruf der kommentierten Methode
public class Foo{
@CustomAnnotation(classname="com.somepackage.ExternalClass", methodname="method1", invokation="before")
public void bar(){
//method body..
}
}
Das Verfahren in der Anmerkung angegeben aufgerufen werden sollte, bevor die eigentliche Methode ist aufgerufen. Bitte schlagen Sie vor, wie Sie dies erreichen können.
IMO, was Sie hier tun, nicht viel Sinn machen. Sie versuchen Dinge neu zu implementieren, die Sie viel einfacher über AOP erledigen können. Aber wenn Sie AOP verwenden, warum sollten Sie dann Ihren Hauptanwendungscode mit Informationen darüber, wie Sie bereichsübergreifende Probleme anwenden, verseuchen? Eine saubere Lösung wäre, diese Information vollständig in die Aspekte selbst zu externalisieren und die Reflektionsmagie loszuwerden. Lass es mich wissen, wenn du ein einfaches AspectJ-Beispiel von dem sehen willst, worüber ich spreche. – kriegaex