我有一类陈旧的EJB(不是单身!)。当创建此类的第一个bean时,我只需要调用一个方法(加载配置)。 @PostConstruct解决了我的一半问题,但它已经为每个bean执行了。解决此类问题最优雅的方法是什么?
答案 0 :(得分:0)
您可以使用@Startup批注强制容器在应用程序初始化期间实例化单例实例。
@Startup
public class StartupBean {
@PostConstruct
private void startup() { ... }
@PreDestroy
private void shutdown() { ... }
...
}
答案 1 :(得分:0)
我看到两个选项:
考虑使用封装文件配置数据的单例对象,并在EJB中添加对它的引用。
考虑创作设计模式。我认为原型模式应该符合您的需求,但您可能会找到其他替代方案。请查看详细信息:http://en.wikipedia.org/wiki/Software_design_pattern。