-
- 类型参数:
T
- Entity类型
public interface DistributeTableStrategy<T>
分表分库策略,结合@DistributeTable使用
不能与@Cacheable同时使用
使用分表分库功能重点是主键的生成策略,不同场景生成策略不一样
详情见: https://redkale.org
- 作者:
- zhangjx
- 另请参阅:
DistributeTable
-
-
方法概要
所有方法 实例方法 抽象方法 默认方法 已过时的方法 修饰符和类型 方法 说明 default String
getSource(Serializable primary)
获取DataSource资源名,为null表示没有分布物理库
查询单个对象(DataSource.find)时调用本方法default String
getSource(FilterNode node)
获取DataSource资源名,为null表示没有分布物理库
查询、修改、删除对象(DataSource.find、DataSource.query、DataSource.delete、DataSource.update)时调用本方法default String
getSource(T entity)
获取DataSource资源名,为null表示没有分布物理库
新增对象或更新单个对象(DataSource.insert、DataSource.update)时调用本方法String
getTable(String table, Serializable primary)
获取对象的表名
查询单个对象(DataSource.find)时调用本方法获取表名default String
getTable(String table, FilterNode node)
已过时。2.8.0 replaced by getTables(String table, FilterNode node)String
getTable(String table, T entity)
获取对象的表名
新增对象或更新单个对象(DataSource.insert、DataSource.update)时调用本方法获取表名String[]
getTables(String table, FilterNode node)
获取对象的表名
查询、修改、删除对象(DataSource.find、DataSource.query、DataSource.delete、DataSource.update)时调用本方法获取表名
-
-
-
方法详细资料
-
getSource
default String getSource(Serializable primary)
获取DataSource资源名,为null表示没有分布物理库
查询单个对象(DataSource.find)时调用本方法- 参数:
primary
- 记录主键- 返回:
- DataSource资源名
- 从以下版本开始:
- 2.8.0
-
getSource
default String getSource(T entity)
获取DataSource资源名,为null表示没有分布物理库
新增对象或更新单个对象(DataSource.insert、DataSource.update)时调用本方法- 参数:
entity
- 实体对象- 返回:
- DataSource资源名
- 从以下版本开始:
- 2.8.0
-
getSource
default String getSource(FilterNode node)
获取DataSource资源名,为null表示没有分布物理库
查询、修改、删除对象(DataSource.find、DataSource.query、DataSource.delete、DataSource.update)时调用本方法- 参数:
node
- 过滤条件- 返回:
- DataSource资源名
- 从以下版本开始:
- 2.8.0
-
getTable
String getTable(String table, Serializable primary)
获取对象的表名
查询单个对象(DataSource.find)时调用本方法获取表名- 参数:
table
- 模板表的表名primary
- 记录主键- 返回:
- 带库名的全表名
-
getTable
String getTable(String table, T entity)
获取对象的表名
新增对象或更新单个对象(DataSource.insert、DataSource.update)时调用本方法获取表名- 参数:
table
- 模板表的表名entity
- 实体对象- 返回:
- 带库名的全表名
-
getTables
String[] getTables(String table, FilterNode node)
获取对象的表名
查询、修改、删除对象(DataSource.find、DataSource.query、DataSource.delete、DataSource.update)时调用本方法获取表名- 参数:
table
- 模板表的表名node
- 过滤条件- 返回:
- 带库名的全表名
- 从以下版本开始:
- 2.8.0
-
getTable
@Deprecated(since="2.8.0") default String getTable(String table, FilterNode node)
已过时。2.8.0 replaced by getTables(String table, FilterNode node)获取对象的表名
查询、修改、删除对象(DataSource.find、DataSource.query、DataSource.delete、DataSource.update)时调用本方法获取表名
注意: 需保证FilterNode过滤的结果集合必须在一个数据库表中- 参数:
table
- 模板表的表名node
- 过滤条件- 返回:
- 带库名的全表名
- 另请参阅:
getTables(java.lang.String, org.redkale.source.FilterNode)
-
-