我为我的应用程序实现了一种监视框架。基本思想是使用Aspectj编织一段代码,该代码通过JMX公开带有特定注释的注释变量。
所以我用切入点

@Around("get (@mypackage.Gauge * *) && @annotation(annotation)")


但是,为了通过JMX公开我的变量,我需要一次获取它的值(以便进行JMX绑定)。我使用编译时编织。加载带有@Gauge批注的类后,有什么方法可以执行一段代码?

最佳答案

有什么办法可以在执行完一段代码后执行
  带有@Gauge注释的类是否已加载?


是。尝试这个:

after() : staticinitialization(@Gauge *) {
    // Do something here
}

关于java - Aspectj围绕字段和类初始化的建议,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15501701/

10-10 19:38