文章目录
概要
自定义动态数据源:AbstractRoutingDataSource+Sharding-Jdbc
整体架构流程
mybatis查询简单sql语句流程
组合后实现细节
1.执行dao方法
2.从AbstractRoutingDataSource获取数据库Sharding-Jdbc,进而获取连接ShardingConnection
3.构建shardingPreparedStament
4.shardingPreparedStament执行时sql路由,并在分组执行时,新建Connection
5.执行过程日志描述
6.事务使用
使用事务时,需要先指定数据源,然后才可以使用
小结
1ShardingConnection对应的不是实际的物理连接,物理连接需要在执行时再创建,参考ShardingPreparedStatement.execute()方法。
2多数据使用中,尽量是不使用事务的,除非要求高的操作,只能保证单个数据库事务,不能跨库事务。