# 所有程序包的分层结构

程序包分层结构:

- com.taosdata.jdbc,
- com.taosdata.jdbc.enums,
- com.taosdata.jdbc.rs,
- com.taosdata.jdbc.tmq,
- com.taosdata.jdbc.utils,
- com.taosdata.jdbc.ws,
- com.taosdata.jdbc.ws.entity

## 类分层结构

- java.lang.Object
  - com.taosdata.jdbc.AbstractDriver (implements java.sql.Driver)
    - com.taosdata.jdbc.rs.RestfulDriver
    - com.taosdata.jdbc.TSDBDriver
  - com.taosdata.jdbc.tmq.CallbackResult
  - com.taosdata.jdbc.ColumnMetaData
  - com.taosdata.jdbc.tmq.ConsumerRecords<V> (implements java.lang.Iterable<T>)
  - com.taosdata.jdbc.EmptyResultSet (implements java.sql.ResultSet)
  - com.taosdata.jdbc.utils.HttpClientPoolUtil
  - com.taosdata.jdbc.ws.InFlightRequest
  - com.taosdata.jdbc.tmq.MapDeserializer (implements com.taosdata.jdbc.tmq.Deserializer<V>)
  - com.taosdata.jdbc.utils.NullType
  - com.taosdata.jdbc.utils.OSUtils
  - com.taosdata.jdbc.ws.entity.Payload
    - com.taosdata.jdbc.ws.entity.FetchReq
    - com.taosdata.jdbc.ws.entity.QueryReq
  - com.taosdata.jdbc.tmq.ReferenceDeserializer<V> (implements com.taosdata.jdbc.tmq.Deserializer<V>)
  - com.taosdata.jdbc.ws.entity.Request
  - com.taosdata.jdbc.ws.entity.RequestFactory
  - com.taosdata.jdbc.ws.entity.Response
    - com.taosdata.jdbc.ws.entity.ConnectResp
    - com.taosdata.jdbc.ws.entity.FetchBlockResp
    - com.taosdata.jdbc.ws.entity.FetchJsonResp
    - com.taosdata.jdbc.ws.entity.FetchResp
    - com.taosdata.jdbc.ws.entity.QueryResp
  - com.taosdata.jdbc.ws.ResponseFuture (implements java.lang.Comparable<T>)
  - com.taosdata.jdbc.rs.RestfulResultSet.Field
  - com.taosdata.jdbc.SchemalessWriter
  - com.taosdata.jdbc.utils.SqlSyntaxValidator
  - com.taosdata.jdbc.utils.StringUtils
  - com.taosdata.jdbc.TableVGroupID
  - com.taosdata.jdbc.tmq.TaosConsumer<V> (implements com.taosdata.jdbc.tmq.TConsumer<V>)
  - com.taosdata.jdbc.TaosGlobalConfig
  - com.taosdata.jdbc.utils.TaosInfo (implements com.taosdata.jdbc.utils.TaosInfoMBean)
  - java.lang.Throwable (implements java.io.Serializable)
    - java.lang.Exception
      - java.lang.RuntimeException
        - com.taosdata.jdbc.tmq.DeserializerException
  - com.taosdata.jdbc.enums.TimestampPrecision
  - com.taosdata.jdbc.tmq.TMQConstants
  - com.taosdata.jdbc.tmq.TopicPartition
  - com.taosdata.jdbc.ws.Transport (implements java.lang.AutoCloseable)
  - com.taosdata.jdbc.TSDBConstants
  - com.taosdata.jdbc.TSDBError
  - com.taosdata.jdbc.TSDBErrorNumbers
  - com.taosdata.jdbc.TSDBException
  - com.taosdata.jdbc.TSDBJNIConnector
    - com.taosdata.jdbc.tmq.TMQConnector
  - com.taosdata.jdbc.TSDBResultSetBlockData
  - com.taosdata.jdbc.TSDBResultSetRowData
  - com.taosdata.jdbc.TSDBSubscribe
  - com.taosdata.jdbc.utils.UnsignedDataUtils
  - com.taosdata.jdbc.utils.Utils
  - com.taosdata.jdbc.VGroupIDResp
  - org.java_websocket.WebSocketAdapter (implements org.java_websocket.WebSocketListener)
    - org.java_websocket.AbstractWebSocket
      - org.java_websocket.client.WebSocketClient (implements java.lang.Runnable, org.java_websocket.WebSocket)
        - com.taosdata.jdbc.ws.WSClient (implements java.lang.AutoCloseable)
  - com.taosdata.jdbc.WrapperImpl (implements java.sql.Wrapper)
    - com.taosdata.jdbc.AbstractConnection (implements java.sql.Connection)
      - com.taosdata.jdbc.rs.RestfulConnection
      - com.taosdata.jdbc.TSDBConnection
      - com.taosdata.jdbc.ws.WSConnection
    - com.taosdata.jdbc.AbstractDatabaseMetaData (implements java.sql.DatabaseMetaData)
      - com.taosdata.jdbc.rs.RestfulDatabaseMetaData
      - com.taosdata.jdbc.TSDBDatabaseMetaData
    - com.taosdata.jdbc.AbstractParameterMetaData (implements java.sql.ParameterMetaData)
      - com.taosdata.jdbc.rs.RestfulParameterMetaData
      - com.taosdata.jdbc.TSDBParameterMetaData
    - com.taosdata.jdbc.AbstractResultSet (implements java.sql.ResultSet)
      - com.taosdata.jdbc.ws.AbstractWSResultSet
        - com.taosdata.jdbc.ws.BlockResultSet
      - com.taosdata.jdbc.DatabaseMetaDataResultSet
      - com.taosdata.jdbc.rs.RestfulResultSet
      - com.taosdata.jdbc.tmq.TMQResultSet
      - com.taosdata.jdbc.TSDBResultSet
    - com.taosdata.jdbc.AbstractStatement (implements java.sql.Statement)
      - com.taosdata.jdbc.rs.RestfulStatement
        - com.taosdata.jdbc.rs.RestfulPreparedStatement (implements java.sql.PreparedStatement)
      - com.taosdata.jdbc.TSDBStatement
        - com.taosdata.jdbc.TSDBPreparedStatement (implements java.sql.PreparedStatement)
      - com.taosdata.jdbc.ws.WSStatement
    - com.taosdata.jdbc.rs.RestfulResultSetMetaData (implements java.sql.ResultSetMetaData)
    - com.taosdata.jdbc.TSDBResultSetMetaData (implements java.sql.ResultSetMetaData)

## 接口分层结构

- java.lang.AutoCloseable
  - java.io.Closeable
    - com.taosdata.jdbc.tmq.Deserializer<V>
  - com.taosdata.jdbc.tmq.Deserializer<V>
  - com.taosdata.jdbc.tmq.TConsumer<V>
- com.taosdata.jdbc.tmq.OffsetCommitCallback
- com.taosdata.jdbc.utils.TaosInfoMBean

## 枚举分层结构

- java.lang.Object
  - java.lang.Enum<E> (implements java.lang.Comparable<T>, java.io.Serializable)
    - com.taosdata.jdbc.enums.SchemalessProtocolType
    - com.taosdata.jdbc.enums.DriverType
    - com.taosdata.jdbc.enums.DataType
    - com.taosdata.jdbc.enums.TimestampFormat
    - com.taosdata.jdbc.enums.SchemalessTimestampType
    - com.taosdata.jdbc.ws.entity.Action
    - com.taosdata.jdbc.ws.entity.Code