6.3. 配置 JDBC 数据源


OSGi 事务架构 中所述,在 OSGi 服务 registry 中必须注册一些服务。正如您 找到查找)事务管理器实例(例如 javax.transaction.UserTransaction 接口)的事务管理器实例一样,您可以使用 javax.sql.DataSource 接口与 JDBC 数据源相同。要求是:

  • 与目标数据库通信的数据库特定数据源
  • 您可以配置池以及可能的事务管理(XA)的通用数据源

在 OSGi 环境中,如 Fuse,如果它们注册为 OSGi 服务,则可从应用程序访问数据源。基本上,它按如下方式完成:

org.osgi.framework.BundleContext.registerService(javax.sql.DataSource.class,
                                                 dataSourceObject,
                                                 properties);
org.osgi.framework.BundleContext.registerService(javax.sql.XADataSource.class,
                                                 xaDataSourceObject,
                                                 properties);

注册这些服务的方法有两种:

  • 使用 jdbc:ds-create Karaf console 命令发布数据源。这是 配置方法
  • 使用 Blueprint、OSGi Declative Services(SCR)或只使用 BundleContext.registerService() API 调用来发布数据源。这个方法需要专用的 OSGi 捆绑包,其中包含代码和/或元数据。这是 the_deployment 方法_。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.