使用Java EE BeanManager作为Singleton

时间:2015-08-14 10:34:15

标签: java-ee caching singleton glassfish-3 bean-manager

在我的Java EE应用程序中,我使用以下代码片段来获取BeanManager

public static BeanManager getBeanManager() {
    try {
        InitialContext initialContext = new InitialContext();
        return (BeanManager) initialContext.lookup("java:comp/BeanManager");
    } catch (NamingException e) {
        throw new RuntimeException("Failed to retrieve BeanManager!", e);
    }
}

使用BeanManager作为单例是否安全,所以每次我需要BeenManager时,我都不必在初始上下文中查找?

1 个答案:

答案 0 :(得分:1)

如果您想将BeanManager用于标准EE(v6-v7)组件,那么它是完全合法的,建议您只需执行以下操作:

@Inject BeanManager beanManager