背景
做毕业设计的时候感觉XXX管理系统实在是太烂大街了,所以想找点创新点来做,虽然项目还是个管理系统,但是希望可以做出来一个小组件放到项目上,所以想到了之前想做的一个异步架构的Jdbc,翻了下Mysql官网,就准备开始干了。
工作内容
1、Jdbc(Java-DataBase-Connector)是一套java连接数据库的标准接口,也就是之前常用的java.sql.Connection,java.sql.Statement,java.sql.ResultSet几个标准接口,但是很明显,这几个接口的调用方式都是同步调用,也就是在查询数据库的时候需要线程进入阻塞状态直到返回查询结果,所以打算用NIO的方式修改一下查询调用过程,用回调的方式处理查询结果,这样发送sql的线程就不用阻塞等待了。
2、mysql-connector/J是标准Jdbc连接Mysql最常用的一个连接库,在实现过程中借鉴了很多优秀的设计,首先就是实现Mysql官网的连接协议,协议的内容在Mysql官网可以查到:https://dev.mysql.com/doc/internals/en/client-server-protocol.html,所有的协议包都能在官网找到,而且类型也不算多,但是这个过程还是要花不少时间。