sharding-core-entry
- 模块结构
sharding-core-entry的主要功能是对sql进行分片得到SQLRouteResult,包含三个类:
- BaseShardingEngine。是抽象类,对外提供SQLRouteResult shard(final String sql, final List
- PreparedQueryShardingEngine。它是BaseShardingEngine的实现类,实现了cloneParameters()和route()的实现就是在子类完成的。含有属性
PreparedStatementRoutingEngine routingEngine;
,它在route()中发挥了作用。 - SimpleQueryShardingEngine。它是BaseShardingEngine的实现类,实现了cloneParameters()和route()的实现就是在子类完成的。含有属性
StatementRoutingEngine routingEngine;
,它在route()中发挥了作用。
模块结构图
设计模式和设计原则
- 模板方法
BaseShardingEngine类的SQLRouteResult shard(final String sql, final List