我正在使用IBM Integration Toolkit 9.我创建了一个Java Compute节点,我想建立一个到Oracle数据库的JDBC连接池,并在Java Compute节点中使用它。我该如何设置该池?使用其中一个“节点”类型?具体在哪里我将插入数据库用户和密码。 (例如,在WebLogic中设置数据库连接池时,可以在控制台上添加信用。) 我不想在命令行上输入它。我希望它至少与bar文件捆绑在一起,以便它可以部署在不同的环境中。 谢谢!
答案 0 :(得分:0)
JDBC conenction池详细信息和密码被视为"管理时间"设置,因此无法在部署时在JCN上设置它们。而是在JCN代码中引用可配置服务。例如,在通话中:
getJDBCType4Connection(" myDataSource",JDBC_TransactionType.MB_TRANSACTION_AUTO)
这告诉节点在运行时它将从名为" myDataSource"的可配置服务获取jdbc连接的详细信息。
您可以使用MB Explorer或mqsichangeproperties创建相关的可配置服务,并且可以使用maxConnectionPoolSize控制池大小。类似地,在这个可配置的服务上有一个名为" securityIdentity"的属性。这对应于使用mqsisetdbparms在代理商pwd商店中设置的用户名和密码。
例如,如果将securityIdentity设置为myJDBCUser,则以下mqsisetdbparms命令会设置用户名和密码:
mqsisetdbparms -n jdbc :: myJDBCUser -u myUserName -p myPassword
这似乎最初似乎更复杂但是这允许代码通过识别您连接的特定数据库对流设计不重要而更容易在环境之间移动,因此应该与流程设计分离设计时间工件。
通过这种方式,每个代理可以为JDBC数据库定义不同的可配置服务定义,该定义对应于等效的数据库端点。
使用密码存储可确保登录凭据不会像其他配置数据一样以明文形式存储。