druid连接池的使用方式是创建一个druidDataSource,所以对于他的调用者都是持有这个DataSource并使用getConnection方法的类。
对于普通的mybatis应用来说,就是mybatis的sql executor 持有druidDataSource,利用他来获取connection。
对于接入mybatis和shardingsphere的应用来说,mybatis调用shardingDataSource的getConnection(shardingDataSource早已经持有druidDataSource),他会再调用druidDataSource。
SQL执行完成之后,无论成功失败,上层代码都会进行 connection.close()
druid通过实现close方法,在其内部逻辑进行了连接的回收。
创建DataSource主要就是创建一个druidDataSource,核心逻辑就是实例化,而执行的时机要看应用的实现。
实例化的时机可能在业务应用,也可能在spring的autoconfigure包,也可能在shardingsphere的shardingDataSource创建的时候。
这里注意一下和mybatis-spring的结合使用,因为他会去找唯一的DataSource,所以要保证DataSource的唯一性。
初始化主流程
init()
<< · Back Index ·>>
1 丁零零零零…电话铃声急促,李明杰拿起了话筒。洮昌公安派出所值班民警报告:“刚才,管区内一对夫妇来派出所报案,他们的1 ...
胡安·卡洛斯国王大学Logo 胡安·卡洛斯国王大学 (Universidad Rey Juan Carlos) ,简称胡卡( URJC),是一所以西班牙老国王 ...