diff --git a/docs-cn/14-reference/03-connector/java.mdx b/docs-cn/14-reference/03-connector/java.mdx index 374fe7cfd039903315c9af4a8a08b3a4df83fe11..910aaeebfcf21f2df0d85bf8141e6ce4cec34c18 100644 --- a/docs-cn/14-reference/03-connector/java.mdx +++ b/docs-cn/14-reference/03-connector/java.mdx @@ -114,9 +114,9 @@ String jdbcUrl = "jdbc:TAOS://taosdemo.com:6030/test?user=root&password=taosdata Connection conn = DriverManager.getConnection(jdbcUrl); ``` -以上示例,使用了 JDBC 原生连接的 driver,建立了到 hostname 为 taosdemo.com,端口为 6030(TDengine 的默认端口),数据库名为 test 的连接。这个 URL 中指定用户名(user)为 root,密码(password)为 taosdata。 +以上示例,使用了 JDBC 原生连接的 TSDBDriver,建立了到 hostname 为 taosdemo.com,端口为 6030(TDengine 的默认端口),数据库名为 test 的连接。这个 URL 中指定用户名(user)为 root,密码(password)为 taosdata。 -**注意**:使用 JDBC 原生连接的 driver,taos-jdbcdriver 驱动包时需要依赖系统对应本地的客户端驱动(Linux 下是 libtaos.so;Windows 下是 taos.dll)。 +**注意**:使用 JDBC 原生连接,taos-jdbcdriver 驱动包需要依赖系统对应本地的客户端驱动(Linux 下是 libtaos.so;Windows 下是 taos.dll)。 url 中的配置参数如下: @@ -181,7 +181,7 @@ String jdbcUrl = "jdbc:TAOS-RS://taosdemo.com:6041/test?user=root&password=taosd Connection conn = DriverManager.getConnection(jdbcUrl); ``` -以上示例,使用了 JDBC REST 连接的 driver,建立了到 hostname 为 taosdemo.com,端口为 6041,数据库名为 test 的连接。这个 URL 中指定用户名(user)为 root,密码(password)为 taosdata。 +以上示例,使用了 JDBC REST 连接的 RestfulDriver,建立了到 hostname 为 taosdemo.com,端口为 6041,数据库名为 test 的连接。这个 URL 中指定用户名(user)为 root,密码(password)为 taosdata。 使用 JDBC REST 连接,不需要依赖本地函数库。与 JDBC 原生连接相比,仅需要: @@ -189,6 +189,8 @@ Connection conn = DriverManager.getConnection(jdbcUrl); 2. jdbcUrl 以“jdbc:TAOS-RS://”开头; 3. 使用 6041 作为连接端口。 +url 中的配置参数如下: + - user:登录 TDengine 用户名,默认值 'root'。 - password:用户登录密码,默认值 'taosdata'。 - batchfetch: true:在执行查询时批量拉取结果集;false:逐行拉取结果集。默认值为:false。逐行拉取结果集使用 HTTP 方式进行数据传输。从 taos-jdbcdriver-2.0.38 和 TDengine 2.4.0.12 版本开始,JDBC REST 连接增加批量拉取数据功能。taos-jdbcdriver 与 TDengine 之间通过 WebSocket 连接进行数据传输。相较于 HTTP,WebSocket 可以使 JDBC REST 连接支持大数据量查询,并提升查询性能。 @@ -256,7 +258,7 @@ properties 中的配置参数如下: - TSDBDriver.PROPERTY_KEY_CHARSET:仅在使用 JDBC 原生连接时生效。 客户端使用的字符集,默认值为系统字符集。 - TSDBDriver.PROPERTY_KEY_LOCALE:仅在使用 JDBC 原生连接时生效。 客户端语言环境,默认值系统当前 locale。 - TSDBDriver.PROPERTY_KEY_TIME_ZONE:仅在使用 JDBC 原生连接时生效。 客户端使用的时区,默认值为系统当前时区。 -- 此外对 JDBC 原生连接,通过指定 URL 和 Properties 还可以指定其他参数,比如日志级别、SQL 长度等。详见 [config](/reference/config#为客户端指定配置文件) 中对客户端适用的参数。 +- 此外对 JDBC 原生连接,通过指定 URL 和 Properties 还可以指定其他参数,比如日志级别、SQL 长度等。更多详细配置请参考[客户端配置](/reference/config/#仅客户端适用)。 ### 配置参数的优先级 @@ -268,8 +270,6 @@ properties 中的配置参数如下: 例如:在 url 中指定了 password 为 taosdata,在 Properties 中指定了 password 为 taosdemo,那么,JDBC 会使用 url 中的 password 建立连接。 -> 更多详细配置请参考[客户端配置](/reference/config/#仅客户端适用) - ## 使用示例 ### 创建数据库和表 @@ -352,13 +352,11 @@ JDBC 连接器可能报错的错误码包括 3 种:JDBC driver 本身的报错 **注意**: -- JDBC REST 连接暂时不提供参数绑定这种使用方式 +- JDBC REST 连接目前不支持参数绑定这种使用方式 - 以下示例代码基于 taos-jdbcdriver-2.0.36 - binary 类型数据需要调用 setString 方法,nchar 类型数据需要调用 setNString 方法 - setString 和 setNString 都要求用户在 size 参数里声明表定义中对应列的列宽 -示例代码: - ```java public class ParameterBindingDemo { @@ -622,11 +620,9 @@ public void setNString(int columnIndex, ArrayList list, int size) throws **注意**: -- JDBC REST 连接暂时不提供无模式写入这种使用方式 +- JDBC REST 连接目前不支持无模式写入这种使用方式 - 以下示例代码基于 taos-jdbcdriver-2.0.36 -示例代码: - ```java public class SchemalessInsertTest { private static final String host = "127.0.0.1"; @@ -791,10 +787,11 @@ Query OK, 1 row(s) in set (0.000141s) 示例程序源码位于 `TDengine/examples/JDBC` 下: -- JDBCDemo:JDBC 示例源程序 -- JDBCConnectorChecker:JDBC 安装校验源程序及 jar 包 -- Spring JdbcTemplate 中使用 taos-jdbcdriver,可参考 [SpringJdbcTemplate](https://github.com/taosdata/TDengine/tree/develop/examples/JDBC/SpringJdbcTemplate) -- Springboot + Mybatis 中使用,可参考 [springbootdemo](https://github.com/taosdata/TDengine/tree/develop/examples/JDBC/springbootdemo) +- JDBCDemo:JDBC 示例源程序。 +- JDBCConnectorChecker:JDBC 安装校验源程序及 jar 包。 +- connectionPools:HikariCP, Druid, dbcp, c3p0 等连接池中使用 taos-jdbcdriver。 +- SpringJdbcTemplate:Spring JdbcTemplate 中使用 taos-jdbcdriver。 +- mybatisplus-demo:Springboot + Mybatis 中使用 taos-jdbcdriver。 请参考:[JDBC example](https://github.com/taosdata/TDengine/tree/develop/examples/JDBC)