在我看来,以下结果应该导致两个字段指向同一实例,

class BeanToInject {
    // something
}

class TargetBean {

    @Inject
    private BeanToInject first;

    @Inject
    private BeanToInject second;

}


但这似乎不是真的,因为我先是然后是sysouting

first: BeanToInject@2f51cd27
second: BeanToInject@1e92abdf


是不是应该在给定的上下文中重用bean的引用?
我在这里想念什么?

最佳答案

您没有指定BeanToInject的范围,CDI的默认范围是dependent pseudo-scope,其中每个注入点都接收一个新的bean实例。

10-01 14:28