這是我的第一個問題,所以請溫和。 :-)我知道AspectJ可以在java 類的靜態構造器上創建切入點。但問題是,無論是靜態初始化在一個方面,如下,可以保證被調用一次:是否確保爲AspectJ方面調用靜態初始化器?
@Aspect
public class MyAspect {
private static Map configuration;
static {
// Some initialization stuff
configuration = Config.getConfiguration();
}
... use the "configuration" map in pointcuts and advices
}
換句話說,就是像裝一個Java類的方面是裝的?這是通過ClassLoader完成的嗎?我猜是的 - 它似乎工作 - 但我正在尋找這些方面的保證。
根據對aspectj-users郵件列表的回覆,Ramnivas Laddad(AspectJ In Action的優秀書籍的作者)說,方面中的靜態初始值設定項就像調用類一樣。 – fool4jesus 2010-03-08 14:57:09