注入所有现有数据源的特定子集

时间:2015-09-09 12:13:07

标签: spring dependency-injection

我需要能够处理数据源的动态列表。 为此,我编写了一个返回数据源映射的@Bean方法。

@Bean
@ConfigurationProperties(prefix = "partitioning.shards")
public Map<String, DataSource> datasources() {
    Map<String, DataSource> datasources = new HashMap<>();
    ...
    return datasources;
}

第二步,我需要在不同的类中处理这些数据源。不幸的是,我有另一个工厂方法,它也创建数据源到不同的数据库。

是否可以只注入我自己的方法创建的数据源?我尝试使用限定符来注释我的方法,但这似乎不起作用。

1 个答案:

答案 0 :(得分:0)

我在多个方面都错了:

返回数据源映射不会将数据源添加到我的上下文中。它只是因为我的代码所做的其他事情。在使用单独的@Bean方法添加我的bean之后,限定符注释在没有问题的情况下工作。