五、多数据源与动态、分片数据源
1、确定几个概念
固定单库数据源:
- 是指1个数据源,内部不再有别的子数据源。是它就是它了
- 比如:HikariDataSource、DruidDataSource
固定分片数据源(内部多源,基于分片规则切换):
- 是指1个数据源内有多个子数据源,根据规则确定相关数据源。一般用于分库分表或读写分离场景等。
- 比如:ShardingDataSource(基于 Apache ShardingSphere 适配的数据源)
动态数据源(内部多源,基于线程状态切换):
- 是指1个数据源内有多个子数据源,且可以动态切换内部的子数据源。用时,需要不断手动指定。
- 比如:DynamicDataSource
- 一般通过:
@DynamicDs("db_user_1")
、@DynamicDs("db_user_2")
切换动态数据源内部的子数据源
多数据源:
- 即指有多个数据源(可以是固定数据源或动态数据源),且各不相关。
- 一般通过:
@Db("db_user")
、@Db("db_order")
确认1个数据源。