使用单例类和应用程序范围的托管bean来保存应用程序数据是否存在差异?
我需要查找某些JNDI资源,例如远程bean接口,因此我自己写了一个单例来缓存我的引用,只允许单引用。 (服务定位)
我在两个不同的浏览器中打开了我的网站,而且这个单例只被初始化了一次。所以我假设它的应用范围?
应用程序范围托管bean的任何其他好处,然后能够访问其在jsf?
中的属性答案 0 :(得分:4)
单身人士不是单元可测试的,也不是可抽象的,也不是可扩展的。如果你的唯一目的是拥有应用程序作用域数据,那么单身人士在可靠地创建和维护方面也是不必要的复杂(至少,如果你因为某些原因真的想要一个完整的单身人士 - 大多数初学者都不会完全理解单身人士应该是什么样的人。
“只创建一个”就像应用程序作用域的托管bean一样,开发,测试和维护起来要简单得多。作为框架的JSF将保证在Web应用程序的生命周期中只创建和重用一个实例。