本文介绍了Java EE 7容器:在启动时初始化bean而不将其添加到beans.xml?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
是否存在任何bean类型或Java EE批注来在容器启动时初始化bean,而不将bean添加到bean.xml?
Is there any bean type or Java EE annotation to get a bean initialized at container startup without adding the bean to beans.xml?
推荐答案
是的。
这是我在部署时需要单例应用程序范围的bean时使用的方法:
Yes, there is.
This is what I use when I need a singleton, application scoped bean started on deploy:
import javax.ejb.Singleton;
import javax.ejb.Startup;
import javax.enterprise.context.ApplicationScoped;
import javax.inject.Named;
import javax.annotation.PostConstruct;
@Named( "myBean" )
@ApplicationScoped
@Startup
@Singleton
public class MyBean {
@PostConstruct
public void postConstruct() {}
}
postConstruct如果除了初始化之外还需要执行任何代码,则添加
方法。
这篇关于Java EE 7容器:在启动时初始化bean而不将其添加到beans.xml?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!