如何在OSGi包中设置连接池?

pau*_*aul 1 db2 osgi connection-pooling

在为Websphere平台开发Web应用程序多年之后,我最近一直在研究OSGi,特别是与RAP(RichAjayPlatform)项目有关.

过去,我已经能够使用JNDI查找访问EAR中定义的连接池.

如何在OSGi环境中创建连接池并访问它们?我创建了一个包含jdbc驱动程序的DB2包,但我不确定如何创建池.以前,这是EAR中的一个配置,Websphere处理它.

那里有任何示例,教程吗?

Nei*_*ett 10

当然,OSGi没有"内置"来进行连接池,但实现起来非常简单.

首先,您的客户端代码应该通过服务访问数据库,可能是类型javax.sql.DataSource(我建议使用Declarative Services将其注入您的组件).

然后,您需要一个捆绑包,它将使用特定的驱动程序创建连接池并注册DataSource服务.我还将使用Declarative Services构建它,包装Apache Commons DBCP库.