^ (接口) NIOConnection
^ (抽象类) AbstractConnection
^ (抽象类) BackendAIOConnection
^ (类) MySQLConnection
^ (类) PostgreSQLBackendConnection
^ (抽象类) FrontendConnection
^ (类) ManagerConncetion
^ (类) ServerConnection
NIOConnection定义了接口,我们可以忽略。
AbstractConnection定义了所有连接共用的功能,比如对数据的读写。而后BackendAIOConnection和FrontendConnection都是抽象类,需要子类才能完成初始化,前者是指mycat和数据库的连接,称为后端连接,后者为jdbc和mycat的连接,称为前端连接。后端连接,还有一个就是通过JDBC的JDBCConnection,oracle主要是通过此类完成查询等操作的。另外两个MySQLConnection和PostgreSQLBackendConnection分别为实现的mysql协议和postgresql的协议。FrontendConnection下面两个分别为监控连接和服务连接,jdbc连接mycat就是ServerConnection。FrontendConnection里定义了很多执行sql的方法。