0
我已经获得,所得到的编程方式使用下面的代码CDI豆:我们是否需要销毁以编程方式获得的CDI bean?
MyBean bean = CDI.current().select(MyBean.class, qualifier).get();
一旦我做了,我是否需要使用
CDI.current().destroy (bean);
破坏这个Bean或不豆继承范围从我的班?
我已经获得,所得到的编程方式使用下面的代码CDI豆:我们是否需要销毁以编程方式获得的CDI bean?
MyBean bean = CDI.current().select(MyBean.class, qualifier).get();
一旦我做了,我是否需要使用
CDI.current().destroy (bean);
破坏这个Bean或不豆继承范围从我的班?
或者,bean是否继承我的类的范围?
绝对没有。它会给你的任何范围MyBean
。
我需要如果你的bean是正常范围的,你不需要做破坏这个bean
。但是,如果它被称为伪范围,则可能需要将其销毁。 备案,正常范围都是基本的CDI范围除了@Dependent
。
原因是@Dependent
生命周期(所以销毁以及)绑定到注入它的bean。但是你没有真正注入它,而是你进行了程序化查找。因此,它不受任何其他bean的约束,你应该销毁它。
谢谢。这很有帮助。 –