給定兩個豆@Startup註釋:對於注入的另一個CDI bean是否需要@DependsOn?
@Singleton
@Startup
@DependsOn("B")
public A {
@Inject
private B b;
}
@Singleton
@Startup
public B {}
在這種情況下,以保證B @DependsOn neccessary在A之前初始化?或者是否存在一些關於配置的約定,在這種情況下,注入的順序決定了初始化的順序?
官方教程不包括這種情況,但只有通過@Inject語義上沒有任何語法/連線鏈接的bean。
如果我真的需要@DependsOn註解,它總是困擾我。因爲如果SecondaryBean需要PrimaryBean,這可能意味着PB被注入到SB中並在某處使用,所以PB在我首次在SB中使用之前保證被初始化。是否存在SB依賴於PB但不使用它的真實世界情況? – rychu