【发布时间】:2018-08-09 08:40:57
【问题描述】:
有没有办法通过使用 Spring Boot 和 Spring Data 将 Spring Boot 应用程序连接到两个不同的 Cassandra 数据源?
我尝试配置 2 个不同的数据源,但 Spring Boot 选择了第一个而忽略了另一个。
谢谢
【问题讨论】:
标签: java spring-boot cassandra spring-data-cassandra
有没有办法通过使用 Spring Boot 和 Spring Data 将 Spring Boot 应用程序连接到两个不同的 Cassandra 数据源?
我尝试配置 2 个不同的数据源,但 Spring Boot 选择了第一个而忽略了另一个。
谢谢
【问题讨论】:
标签: java spring-boot cassandra spring-data-cassandra
Spring Boot 仅支持开箱即用的单例数据源,它配置了一个 Session 和一个 CassandraTemplate。
从 Spring Data 2.0 开始,CassandraTemplate 支持 SessionFactory,可以将调用路由到不同的 Cassandra Sessions。这是你需要自己配置的东西:
@Configuration
class MyConfig {
@Bean
CassandraTemplate cassandraTemplate(CassandraConverter converter) {
SessionFactory factory = …;
return new CassandraTemplate(factory, converter);
}
}
您可能想查看AbstractRoutingSessionFactory 以构建您自己的Session 路由器。
【讨论】: