构造 DBConnection
DolphinDB Java API 通过构造与 DolphinDB 服务端的连接对象来完成各种交互操作。本文将介绍构造连接 DBConnection 的两种方法及其参数和使用示例。
无参构造
可以通过如下示例代码构造一个 DBConnection 简单对象。
此时创建的连接使用默认规则,即:asynchronousTask、useSSL、compress 值默认为 false。(参数详情请参考本文有参构造小节)
DBConnection dbConnection = new DBConnection();
有参构造
以下为创建一个 DBConnection 的完整示例。
DBConnection(boolean asynchronousTask, boolean useSSL, boolean compress, boolean usePython, boolean isUrgent, SqlStdEnum sqlStd)
参数介绍
asynchronousTask boolean 类型,表示是否支持异步任务,可选参数,默认值为 false。开启异步的情况下(asynchronousTask = true),没有返回值。该功能适用于异步写入数据。
useSSL boolean 类型,表示是否使用 SSL 连接,可选参数,默认值为 false ,详情可参考集群通信与连接。
注意:若要开启 SSL 连接(useSSL = true),服务器端的配置文件(如果是单节点则为 dolphindb.cfg 文件;如果是集群则为 cluster.cfg 文件)须同时配置功能参数 enableHTTPS=true。
compress boolean 类型,表示是否对数据进行压缩,可选参数,默认值为 false。
usePython boolean 类型,表示是否开启 Python 解析,可选参数,默认值为 false。注意,该功能 server 暂未支持,敬请期待。
isUrgent boolean 类型,表示是否为紧急任务,可选参数,默认值为 false。若设定 isUrgent=ture,即使系统繁忙,该任务仍会通过紧急通道得以执行。
sqlStd 枚举类型,表示 SQL 标准语法解析,可选参数。1.30.22.1 版本起支持。现支持三种解析方式:DolphinDB, Oracle, MySQL,默认为 DolphinDB 。用户可通过填入SqlStdEnum.DolphinDB 等枚举来指定该参数。注意,该功能对应的 server 版本自 2.00.10、1.30.22 起开始支持。
使用示例
如下构造一个开启异步任务和 SSL 连接、不开启压缩和 python 解析,同时指定使用 Oracle 语法解析的连接。
DBConnection conn = new DBConnection(true, true, false,false,SqlStdEnum.Oracle);
方法汇总
DBConnection 类提供如下主要方法:
方法名 | 详情 |
---|---|
DBConnection([asynchronousTask, useSSL, compress, usePython, isUrgent, sqlStd]) | 构造对象 |
connect(host, port, [timeout, username, password, initialScript, enableHighAvailability, highAvailabilitySites, reconnect, enableLoadBalance])) | 将会话连接到 DolphinDB 服务器 |
login(username,password,enableEncryption) | 登录服务器 |
run(script)/tryRun(script) | 将脚本在 DolphinDB 服务器运行 |
run(functionName,args)/tryRun(functionName,args) | 调用 DolphinDB 服务器上的函数 |
upload(variableObjectMap) | 将本地数据对象上传到 DolphinDB 服务器 |
setLoadBalance(loadBalance) | 设置在开启高可用的情况下,是否开启负载均衡 |
isBusy() | 判断当前会话是否正忙 |
close() | 关闭当前会话。若当前会话不再使用,会自动被释放,但存在释放延时,可以调用 close() 立即关闭会话。否则可能出现因连接数过多,导致其它会话无法连接服务器的问题。 |