错误信息:data sources cannot be empty 这表明在创建 shardingdatasource 时,传入的数据源(data sources)为空,导致异常被抛出。 2. 分析异常原因:数据源为空 在使用分片数据源(如 ShardingSphere、MyBatis-Plus 分片等)时,必须配置至少一个数据源。如果数据源配置为空或未正确配置,就会触发
publicShardingRule(ShardingRuleConfiguration shardingRuleConfig, Collection<String>dataSourceNames) { Preconditions.checkArgument(!dataSourceNames.isEmpty(), "Data sources cannot be empty.");this.shardingRuleConfig =shardingRuleConfig;this.shardingDataSourceNames =newShardingDataSourceNames(shardingRuleConfig, ...
= dataSourceNames && !dataSourceNames.isEmpty(), "Data sources cannot be empty."); this.ruleConfiguration = shardingRuleConfig; shardingDataSourceNames = new ShardingDataSourceNames(shardingRuleConfig, dataSourceNames); tableRules = createTableRules(shardingRuleConfig); broadcastTables = shardingRule...
After writing unit tests, spring throws an error as following: Failed to instantiate [javax.sql.DataSource]: Factory method 'shardingDataSource' threw exception; nested exception is java.lang.IllegalArgumentException: Data sources cannot be empty. However, I have added ignore "DataSourceAutoConfigura...
=shardingRuleConfig,"ShardingRuleConfig cannot be null.");Preconditions.checkArgument(null!=dataSourceNames&&!dataSourceNames.isEmpty(),"Data sources cannot be empty.");this.ruleConfiguration=shardingRuleConfig;shardingDataSourceNames=newShardingDataSourceNames(shardingRuleConfig,dataSourceNames);tableRules...
Rule(final ShardingRuleConfiguration shardingRuleConfig, final Collection dataSourceNames) { Preconditions.checkArgument(null != shardingRuleConfig, "ShardingRuleConfig cannot be null."); Preconditions.checkArgument(null != dataSourceNames && !dataSourceNames.isEmpty(), "Data sources cannot be empty."...
* * @param name 读写分离数据源名称 * @param masterDataSource 主节点数据源 * @param slaveDataSource 从节点数据源 * @param otherSlaveDataSources 其他从节点数据源 * @return 读写分离数据源 */ public static DataSource createDataSource(final String name, final DataSource masterDataSource, final ...
if(result.isEmpty()){thrownewShardingJdbcException("Cannot find table rule and default data source with logic tables: '%s'",logicTables);} 将IllegalAccessException或者InvocationTargetException类型的异常转化为ShardingJdbcException异常,并重写异常信息为"Invoke jdbc method exception" ...
static DataSource dataSource; //@BeforeAll 标注的方法会在 @Test 标注的方法被执行前执行一次 @BeforeAll public static void init() throws SQLException { /** * 1、创建datasource */ Map<String, DataSource> dataSourceMap = createDataSources(); /** * 2、构建具体规则 */ Collection<RuleConfigura...
Preconditions.checkState(!config.getSlaveDataSourceNames().isEmpty(), "Slave data source names cannot be empty."); name=config.getName(); masterDataSourceName=config.getMasterDataSourceName(); slaveDataSourceNames=config.getSlaveDataSourceNames(); ...