获取与数据库的 DriverManager 连接
使用 DriverManager 类,与数据库的连接由提供给 JDBC数据库统一资源定位器 URL 来识别。
关于此任务
通过在 JVM 概要文件 OSGI_BUNDLES 和 LIBPATH_SUFFIX JVM 概要文件中指定 Db2® JDBC JAR 和本机 DLL ,为 OSGi JVM 服务器配置 DriverManager 连接。
在 Liberty JVM 服务器中,DriverManager 连接有两种配置方式:
- 使用 CICS® JDBC 自由功能
- 要使用 CICS JDBC Liberty 功能,请将
cicsts:jdbc-1.0功能添加到 server.xml 文件中。 - 使用 Liberty JDBC 功能之一
- 如果您的 server.xml 配置了 Liberty JDBC 功能之一,例如
jdbc-4.2、 那么您必须通过配置全局库,使 Db2 驱动程序可用于您的应用程序。 例如,在您的 server.xml 中:<library id="global"> <fileset dir="/usr/lpp/db2v13/jdbc/classes"/> </library>您还需要在 server.xml 中加入
dataSource元素。 如果您在 JVM 配置文件中配置了 -Dcom.ibm.cics.jvmserver.wlp.jdbc.driver.location 选项,该选项将为您添加。
JDBC可识别两种类URL :
- URL
- URL 不包含 Db2的位置名称。 Db2默URL 可以采用以下两种格式之一:当指定默认 URL 时,应用程序将连接到 CICS 连接的本地 Db2。 如果您的安装使用 Db2 数据共享,则可以从本地 Db2 访问 sysplex 中的所有数据。
jdbc:db2os390sqlj:
或
jdbc:default:connection - URL
- 明确URL 包括 Db2的位置名称。 Db2 for z/OS® 明确 URL 的基本结构为:通常,位置名是 CICS 所连接的本地 Db2 的名称。 但是,您可以指定要访问的远程 Db2 的名称。 在这种情况下, CICS 使用本地 Db2 作为传递,并使用 Db2 分布式数据设施来访问远程 Db2。
jdbc:db2os390:<location-name>
或
jdbc:db2os390sqlj:<location-name>
当使用类型2连接访问 Db2 时,建议使用URL。 当连接关闭时,使用明确URL 可能会导致特定操作,这在同一应用程序套件中使用多个程序时可能会带来不便。 此外,当使用URL 时,连接行为不受 JDBC的影响。
要获取连接,Java 应用程序需要调用 URL 的
getConnection() 方法。 例如:Connection connection =
DriverManager.getConnection("jdbc:default:connection");
将 OSGi Java 程序连接到 Db2时,请将 com.ibm.db2.jcc;resolution:=optional 添加到捆绑软件清单中的 Import-Package。