暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

GBase8s JDBC DataSource对象

原创 星泽 2022-09-20
653

DataSource 对象

GBase 8s JDBC Driver 扩展标准 DataSource 接口,以允许在 DataSource 对象中定义连接属性(标准属性和 GBase 8s 环境变量),而不是通过 URL。

下表描述 GBase 8s 连接属性如何对应于 DataSource 属性。

GBase 8s 连接属性

DataSource 属性

数据类型

是否必需?

描述

IFXHOST

无;

String

对于客户机侧JDBC,必需,除非定义SQLH_TYPE

对于服务器侧JDBC, 不是必需的

运行 GBase 8s 数据库服务器的计算机的 IP 地址或主机名称

PORTNO

portNumber

int

对于客户机侧JDBC,必需,除非定义SQLH_TYPE;对于服务器侧JDBC, 不是必需的

GBase 8s 数据库服务器的端口号。该端口号罗列在 /etc/services 文件中。

DATABASE

databaseName

String

不是必需的,除非连接来自运行在数据库服务器中的web 应用程序(诸如浏览器)

您想要连接至其的 GBase 8s 数据库的名称如果未指定数据库的名称,则制作至GBase 8s 数据库服务器的连接。

GBASEDBTSERVER

serverName

String

对于客户机侧JDBC,必需;对于服务器侧JDBC,忽略

您想要连接至其的 GBase 8s 数据库服务器的名称

USER

user

String

必需

当连接至 GBase 8s 数据库或数据库服务器时,用户名称控制(或决定)会话权

限通常,必须同时指定用户名称和口令;然而,如果 DBMS 信任运行 JDBC 应用程序

的用户,则可能都省略。

PASSWORD

password

String

必需

用户的口令通常,必须同时指定用户名称和口令;然而,如果 DBMS 信任运行 JDBC 应用程序 的用户,则可能都省略。

description

String

必需

DataSource 对象的描述

dataSourceName

String

不是必需的

对于连接池或分布式事务,隐含的ConnectionPoolDataSource XADataSource 对象

的名称不受支持的连接属性GBase 8s JDBC Driver 不支持 networkProtocol 和 roleName 属性。

 

   

 

指定连接信息

如果 LDAP(轻型目录访问协议)服务器或 sqlhosts 文件通过 SQLH_TYPE 属性提供GBase 8s 数据库服务器的 IP 地址、主机名称或端口号或服务名称,则不必使用标准DataSource 属性来指定它们。

ConnectionPoolDataSource 对象

要获取关于 ConnectionPoolDataSource 对象的信息,请参阅连接池。

环境变量

要获取受支持的环境变量(属性)的列表,请参阅 随同 GBase 8s JDBC 驱动程序的 GBase 8s 环境变量。要获取 GBase 8s DataSource 扩展的列表,其允许您定义环境变量值和连接池调整参数,请参阅 DataSource 扩展。驱动程序不查询用户环境来确定环境变量值。

高可用性数据复制

可随同“高可用性数据复制”来使用 DataSource 对象。要获取更多信息,请参阅连接至高可用性集群的服务器。

示例:在示例程序中使用 DataSource 对象

下列来自 pickaseat 示例程序的代码定义并使用 DataSource 对象:

IfxConnectionPoolDataSource cpds = null;

try

{

Context initCtx = new InitialContext();

cpds = new IfxConnectionPoolDataSource();

cpds.setDescription("Pick-A-Seat Connection pool");

cpds.setIfxIFXHOST("158.58.60.88");

cpds.setPortNumber(179);

cpds.setUser("demo");

cpds.setPassword("demo");

cpds.setServerName("ipickdemo_tcp");

cpds.setDatabaseName("ipickaseat");

cpds.setIfxGL_DATE("%B %d, %Y");

initCtx.bind("jdbc/pooling/PickASeat", cpds);

}

catch (Exception e)  

{

System.out.println("Problem with registering the CPDS");

System.out.println("Error: " + e.toString());

}

示例:使用带有 IFX_LOCK_MODE_WAIT 连接属性的 DataSource 对象

下列是使用 DataSource 对象的 IFX_LOCK_MODE_WAIT 连接属性的示例:

示例 1

IfxDataSource ds = new IfxDataSource ();

ds. setIfxIFX_LOCK_MODE_WAIT (65); // 等待 65 秒

int waitMode = ds.getIfxIFX_LOCK_MODE_WAIT ();

示例 2

An example Using DataSource:

IfxDataSource ds = new IfxDataSource ();

ds.setIfxIFX_ISOLATION_LEVEL ("0U"); // set isolation to dirty read with

retain

// update locks.

….

String isoLevel = ds.getIfxIFX_ISOLATION_LEVEL ();

 

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论