package com.walker.store.strategy;
|
|
import com.walker.connector.Address;
|
import com.walker.dbmeta.util.DatabaseUtils;
|
|
/**
|
* 使用多库、多表方式的存储策略。</p>
|
* 多表:主要是因为业务对同一个表会有多种区分,如:一卡通中每个学校都有自己的基础表,<br>
|
* 我们为了拆分表,可以按照业务来重命名表。例如:base_info_389, base_info_212, ...
|
* @author shikeying
|
* @date 2015年12月20日
|
*
|
*/
|
public class MultiDbAndTableStrategy extends OnlyMultiDatabaseStrategy {
|
|
@Override
|
protected String doQueryTableName(Address address, String srcTable, Object parameter) {
|
if(parameter != null && parameter instanceof String){
|
return srcTable + DatabaseUtils.DB_SEPARATOR + parameter;
|
}
|
throw new IllegalArgumentException("MultiDbAndTableStrategy:策略计算表名失败,参数错误:" + parameter);
|
}
|
}
|