在Java SE中,我曾经以这种方式调用单例实例方法:
MySingleton.getInstance().method();
现在,在Java EE 8中,我有一个@Singleton bean。我该如何调用方法?我是否必须在调用者中注入Singleton实例?
@Singleton
@ConcurrencyManagement(ConcurrencyManagementType.CONTAINER)
public class MySingletonBean {
@Lock(LockType.WRITE)
public void method() {
// .....
}
}
我是否必须在调用者中注入Singleton实例?
是的,这是首选的方法。
做就是了
@Inject
private MySingletonBean name;
JEE中的Singleton是一种Session bean。这意味着,您可以使用@EJB注释注入它。
@EJB
private SingletonBean singleton;