OSGi中的全局数据持有者

时间:2018-01-09 05:43:52

标签: singleton osgi osgi-bundle

我需要在几个OSGi模块之间使用全局数据值。在OSGi模块中使用单例数据属性持有者的最佳方法是什么?

我应该设计一个"普通"模块,它导出一个包并在这个公共模块包中存储全局单例?

提前致谢

1 个答案:

答案 0 :(得分:1)

这有点取决于数据初始化的复杂程度。如果您只想共享某种常量,那么共享模块中的单例是一个不错的选择。

在其他情况下,负载更多。例如,如果从数据库加载数据并且加载可能具有其他依赖项,如DataSource。在这些情况下,最好只共享一个接口和一个服务。然后,这允许隐藏服务用户的依赖关系和初始化工作。