简单实现
适用于不经常变化并且和数据库表字段比如userID,ordrCode等无关的数据源。比如读写、是否是历史库等等 实现方法 spring 提供的 AbstractRoutingDataSource 参照。 AbstractRoutingDataSource动态数据源切换 核心复写,返回对应的数据库名称
protected abstract Object determineCurrentLookupKey();
优点:简单方便。几乎无侵入。 不支持复杂的分库(更无分表)功能,比如按userID的hash算法。。
复杂 和字段分库等
sharing-jdbc
大众点评开源的 mycat