一、类调用

简介:calcite可以连接各数据源,做查询。可以收口查询权限,查询多引擎需求

二、 获取Connection发送的请求

请求介绍文档:https://calcite.apache.org/avatica/docs/json_reference.html#closeconnectionrequest

第一个请求:openConnection
Connection connection = DriverManager.getConnection(url, properties);
{"request":"openConnection","connectionId":"17810271-59a0-4ae1-a764-073be9048ebd","info":{"password":"自定义密码","appId":"651544823162880","user":"自定义账号"}}
{"response":"openConnection","rpcMetadata":{"response":"rpcMetadata","serverAddress":"tx-bj-aa:5888"}}
第二个请求:connectionSync
{"request":"connectionSync",
"connectionId":"17810271-59a0-4ae1-a764-073be9048ebd",
"connProps":{"connProps":"connPropsImpl","autoCommit":null,"readOnly":null,"transactionIsolation":null,"catalog":null,"schema":null,"dirty":true}
}
{"response":"connectionSync",
"connProps":{"connProps":"connPropsImpl","autoCommit":null,"readOnly":null,"transactionIsolation":null,"catalog":null,"schema":null,"dirty":false},
"rpcMetadata":{"response":"rpcMetadata","serverAddress":"tx-bj-服务器:5888"}
}

Statement pS = connection.createStatement();

{"request":"createStatement","connectionId":"17810271-59a0-4ae1-a764-073be9048ebd"}
{"response":"createStatement",
"connectionId":"56965299-f5ba-4424-bb6e-b57f1f703658",
"statementId":1473,
"rpcMetadata":{"response":"rpcMetadata","serverAddress":"tx-bj-服务器:5888"}
}
pS.executeQuery(sql);
{"request":"prepareAndExecute",
"connectionId":"17810271-59a0-4ae1-a764-073be9048ebd",
"statementId":1479,
"sql":"SELECT * FROM dw.dwd_表名 limit 10",
"maxRowsInFirstFrame":-1,
"maxRowCount":-1
}
{
"response": "executeResults",
"missingStatement": false,
"rpcMetadata": {
"response": "rpcMetadata",
"serverAddress": "tx-bj-服务器:5888"
},
"results": [{
"response": "resultSet",
"connectionId": "17810271-59a0-4ae1-a764-073be9048ebd",
"statementId": 1479,
"ownStatement": true,
"signature": {
"columns": [{
"ordinal": 0,
"autoIncrement": false,
"caseSensitive": false,
"searchable": true,
"currency": false,
"nullable": 2,
"signed": false,
"displaySize": 2147483647,
"label": "md5_log",
"columnName": "md5_log",
"schemaName": "",
"precision": 2147483647,
"scale": 0,
"tableName": "",
"catalogName": "",
"type": {
"type": "scalar",
"id": 12,
"name": "varchar",
"rep": "STRING"
},
"readOnly": true,
"writable": false,
"definitelyWritable": false,
"columnClassName": "java.lang.String"
}, {
"ordinal": 1,
"autoIncrement": false,
"caseSensitive": false,
"searchable": true,
"currency": false,
"nullable": 2,
"signed": false,
"displaySize": 2147483647,
"label": "biz_type",
"columnName": "biz_type",
"schemaName": "",
"precision": 2147483647,
"scale": 0,
"tableName": "",
"catalogName": "",
"type": {
"type": "scalar",
"id": 12,
"name": "varchar",
"rep": "STRING"
},
"readOnly": true,
"writable": false,
"definitelyWritable": false,
"columnClassName": "java.lang.String"
}, {
"ordinal": 2,
"autoIncrement": false,
"caseSensitive": false,
"searchable": true,
"currency": false,
"nullable": 2,
"signed": false,
"displaySize": 2147483647,
"label": "client_type",
"columnName": "client_type",
"schemaName": "",
"precision": 2147483647,
"scale": 0,
"tableName": "",
"catalogName": "",
"type": {
"type": "scalar",
"id": 12,
"name": "varchar",
"rep": "STRING"
},
"readOnly": true,
"writable": false,
"definitelyWritable": false,
"columnClassName": "java.lang.String"
}, {
"ordinal": 3,
"autoIncrement": false,
"caseSensitive": false,
"searchable": true,
"currency": false,
"nullable": 2,
"signed": false,
"displaySize": 2147483647,
"label": "biz_name",
"columnName": "biz_name",
"schemaName": "",
"precision": 2147483647,
"scale": 0,
"tableName": "",
"catalogName": "",
"type": {
"type": "scalar",
"id": 12,
"name": "varchar",
"rep": "STRING"
},
"readOnly": true,
"writable": false,
"definitelyWritable": false,
"columnClassName": "java.lang.String"
}, {
"ordinal": 4,
"autoIncrement": false,
"caseSensitive": false,
"searchable": true,
"currency": false,
"nullable": 2,
"signed": false,
"displaySize": 2147483647,
"label": "env",
"columnName": "env",
"schemaName": "",
"precision": 2147483647,
"scale": 0,
"tableName": "",
"catalogName": "",
"type": {
"type": "scalar",
"id": 12,
"name": "varchar",
"rep": "STRING"
},
"readOnly": true,
"writable": false,
"definitelyWritable": false,
"columnClassName": "java.lang.String"
}],
"sql": null,
"parameters": [],
"cursorFactory": {
"style": "LIST",
"clazz": null,
"fieldNames": null
},
"statementType": null
},
"firstFrame": {
"offset": 0,
"done": true,
"rows": [
["fb7e61aea7190331d8cebc9d35162327", "7", "1", "gggggg", "0", "2.1.4", "1656791999000", "1656791999213", "12333333333333", "-1", "7983397615961344", "7983397615961344", "113.110.110.110", "阿萨德", "南方", "仓储", "联通"],
["f5d24107070b403b83fdd4a92cd5de33", "1", "5", "hhhhhh", "1", "2.0.5", "1656792000000", "1656792000357", "45666666666666", "-1", "-1", "-1", "110.110.110.241", "中国", "是是是", "", "阿萨德"]
]
},
"updateCount": -1,
"rpcMetadata": {
"response": "rpcMetadata",
"serverAddress": "tx-bj-服务器"
}
}]
}
pS.close();
{"request":"closeStatement","connectionId":"17810271-59a0-4ae1-a764-073be9048ebd","statementId":1479}
{"response":"closeStatement",
"rpcMetadata":{"response":"rpcMetadata","serverAddress":"tx-bj-bdg-服务器:5888"}}
 
connection.close();
{"request":"closeConnection","connectionId":"17810271-59a0-4ae1-a764-073be9048ebd"}
{"response":"closeConnection",
"rpcMetadata":{"response":"rpcMetadata","serverAddress":"tx-bj-服务器:5888"}}

Calcite 获取jdbc连接流程的更多相关文章

  1. 单例模式获取JDBC连接

    package com.jdbc.test; import java.io.IOException; import java.io.InputStream; import java.sql.Conne ...

  2. JDBC连接流程

    ConectionFactory cf = new ConectionFactory();//创建数据库连接Connection con = cf.getConection();//打开水数据库的连接 ...

  3. 获取OlapConnection连接

    目录: 1.获取org.olap4j.OlapConnection对象 2.获取mondrian.olap.Connection对象 一.org.olap4j.OlapConnection对象 说明: ...

  4. JDBC连接抽象方法的使用例子

    package com.zdlt.auth.api.base.datasource; import java.sql.*; import java.util.ArrayList; import jav ...

  5. JDBC连接MySQL数据库及演示样例

    JDBC是Sun公司制定的一个能够用Java语言连接数据库的技术. 一.JDBC基础知识         JDBC(Java Data Base Connectivity,java数据库连接)是一种用 ...

  6. JDBC连接MySQL数据库及示例

      JDBC是Sun公司制定的一个可以用Java语言连接数据库的技术. 一.JDBC基础知识         JDBC(Java Data Base Connectivity,java数据库连接)是一 ...

  7. JAVA采用JDBC连接操作数据库详解

    JDBC连接数据库概述 一.JDBC基础知识 JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供 ...

  8. jdbc连接sql数据库

    JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口 ...

  9. Java使用JDBC连接Hive

    最近一段时间,处理过一个问题,那就是hive jdbc的连接问题,其实也不是大问题,就是url写的不对,导致无法连接.问题在于HiveServer2增加了别的安全验证,导致正常的情况下,传递的参数无法 ...

  10. 线程池-连接池-JDBC实例-JDBC连接池技术

    线程池和连接池   线程池的原理:     来看一下线程池究竟是怎么一回事?其实线程池的原理很简单,类似于操作系统中的缓冲区的概念,它的流程如下:先启动若干数量的线程,并让这些线程都处于睡眠状态,当客 ...

随机推荐

  1. Educational Codeforces Round 132 (Rated for Div

    Educational Codeforces Round 132 (Rated for Div. 2) Recover an RBS 给你一个括号序列,里面存在?号,题目保证至少有一种方案使得该括号序 ...

  2. 初识RPA以及简单的RPA项目——微信群发机器人

    一.RPA的认识和理解 RPA(Robotic Process Automation)即是机器人流程自动化,简称RPA,是一种自动化技术,可以帮助组织实现业务流程的自动化执行,提高效率和准确性.按我的 ...

  3. PictureMarkerSymbol透明的问题

    由于我使用的是位图图片,所以不可能将图片背景处理成透明.不过还是可以通过参数的设定来达到这种效果. PictureMarkerSymbol pPMS = new PictureMarkerSymbol ...

  4. nodejs版本控制器nvm安装及简单使用

    介绍:nvm是node.js的版本管理器,可以安装和切换不同版本node.js 下载:https://github.com/coreybutler/nvm-windows/releases 官网下载: ...

  5. docker-compose固定网段设置

    docker-compose在使用的时候,经常是多个docker组了个内网.而如果不指定内网地址的话,很容易和线下的网段冲突,会造成虽说外部IP和端口都映射好了,但是就是公网无法访问的情况. 解决方案 ...

  6. 类型判断运算符(as、is、is!)

    类型判断运算符 as.is.is! 运算符是在运行时判断对象类型的运算符. as 类型转换(也用作指定 类前缀)) is 如果对象是指定类型则返回 true is! 如果对象是指定类型则返回 fals ...

  7. 2.猿人学爬虫攻防第二题 JS 混淆 动态cookie

    题目链接:请点击 抓取到发布日热度的值,计算所有值的加和 1.分析网页 由于是动态Cookie,为了避免其他Cookie的影响,所以使用浏览器的无痕模式进行调试,按f12并选中[Preserve lo ...

  8. 中电金信:产教联合共育人才 AFAC2024金融智能创新大赛启动

    当前,人工智能技术正在蓬勃发展,引领着各行各业迈向智能化的新纪元,特别是在金融科技领域,伴随人工智能技术的不断迭代与突破,金融服务的边界也在不断拓展,传统的金融业态正经历着深刻的变革与重塑. 与此同时 ...

  9. 【Python】【爬虫】【爬狼】002_自定义获取网页源码的函数

    在上一篇笔记([Python][爬虫系列][爬狼]001_urllib_get_获取响应结果页面代码 - 萌狼蓝天 - 博客园 (cnblogs.com/mllt))我们将一个网页,解析为了文档(源码 ...

  10. 【C#】【平时作业】习题-9-接口

    1.什么是接口 为派生类提供因该遵守的标准结构,而本身只包含成员声明,不包含成员的定义 2.接口与抽象类有什么区别 3.设计IBluetooth. public interface IBluetoot ...