/** * 获取分库分表选择的表名 * * @param datasourceSchema * @param tableNameBean * @param databsename * @return */ public TableBean getShardTableName( DatasourceSchema datasourceSchema, TableNameBean tableNameBean, String databsename) { Map<String, List<TableSchema>> maps = datasourceSchema.collectDataBaseMappingTablename(); List<TableSchema> tableSchemas = maps.get(databsename); TableSchema result = new TableSchema(); for (TableSchema tableSchema : tableSchemas) { if (tableSchema.getTablefield().equals(tableNameBean.getTablefield())) { result = tableSchema; break; } } List<TableBean> tableBeans = new ArrayList<TableBean>(); for (int i = 0; i < result.getCount(); i++) { TableBean tableBean = new TableBean(); tableBean.setName(result.getTablename()); tableBean.setPrefixname(result.getPrefixname() + i); tableBeans.add(tableBean); } return loadBalance.select(tableBeans, tableNameBean.getTablefieldvalue()); }