更新时间:2024-06-05 GMT+08:00
IoTDB JDBC样例程序
功能简介
通过JDBC连接方式,执行IoTDB SQL语句。
代码样例
下面代码片段仅为演示,具体代码参见“com.huawei.bigdata.iotdb.JDBCExample”类。
其中,在jdbc url里设置待连接的IoTDBServer所在的节点IP、端口、用户名和密码。
- 待连接的IoTDBServer所在的节点IP地址,可通过登录FusionInsight Manage界面,选择“集群 > 服务 > IoTDB > 实例”查看。
- RPC端口可通过登录FusionInsight Manager,选择“集群 > 服务 > IoTDB > 配置 > 全部配置”,搜索参数“IOTDB_SERVER_RPC_PORT”获得。
- 普通模式下,初始安装后IoTDB有一个默认用户:root,密码请参见用户账号一览表章节获取。该用户为管理员用户,固定拥有所有权限,无法被赋予,无法被撤销权限,也无法被删除。
- 需在本地环境变量中设置环境变量认证用户名和认证用户密码,建议密文存放,使用时解密,确保安全。其中:
- 认证用户名为访问IoTDB的用户名。
- 认证用户密码为访问IoTDB的用户密码。
private static final String IOTDB_SSL_ENABLE = "false";//该值可登录FusionInsight Manager,选择“集群 > 服务 > IoTDB > 配置”,在搜索框中搜索“SSL”,查看“SSL_ENABLE”参数值获取。 public static void main(String[] args) throws ClassNotFoundException, SQLException { Class.forName("org.apache.iotdb.jdbc.IoTDBDriver"); // set iotdb_ssl_enable System.setProperty("iotdb_ssl_enable", IOTDB_SSL_ENABLE); if ("true".equals(IOTDB_SSL_ENABLE)) { // set truststore.jks path System.setProperty("iotdb_ssl_truststore", "truststore文件路径"); } try (Connection connection = DriverManager.getConnection("jdbc:iotdb://127.0.0.1:22260/", "认证用户名", "认证用户密码"); Statement statement = connection.createStatement()) { // set JDBC fetchSize statement.setFetchSize(10000); for (int i = 0; i <= 100; i++) { statement.addBatch(prepareInsertStatment(i)); } statement.executeBatch(); statement.clearBatch(); ResultSet resultSet = statement.executeQuery("select ** from root where time <= 10"); outputResult(resultSet); resultSet = statement.executeQuery("select count(**) from root"); outputResult(resultSet); resultSet = statement.executeQuery( "select count(**) from root where time >= 1 and time <= 100 group by ([0, 100), 20ms, 20ms)"); outputResult(resultSet); } catch (IoTDBSQLException e) { System.out.println(e.getMessage()); } }
父主题: 开发IoTDB应用