sud*_*kya 3 java cdi java-ee-7
我已经获得了一个 CDI bean,它是使用以下代码以编程方式获得的:
MyBean bean = CDI.current().select(MyBean.class, qualifier).get();
Run Code Online (Sandbox Code Playgroud)
完成后,我是否需要使用销毁这个bean
CDI.current().destroy (bean);
Run Code Online (Sandbox Code Playgroud)
或者 bean 是否继承了我的类的范围?
或者 bean 是否继承了我的类的范围?
绝对不是。它将具有您赋予的任何范围MyBean。
我需要销毁这个豆子吗
如果您的 bean 是正常范围的,则不需要这样做。但是,如果它是所谓的伪作用域,您可能需要销毁它。根据记录,正常作用域是除 @Dependent.
原因是@Dependent生命周期(因此销毁)绑定到您注入它的 bean。但你并没有真正注入它,而是进行了编程查找。因此,它不与任何其他 bean 绑定,您应该销毁它。