java - Spring Data Mongo - 动态更改存储库模板

标签 java spring mongodb spring-data-mongodb

我有这样的场景:相同的数据库结构(相同的集合)在多个 mongo 数据库中复制。这意味着我为每个集合(文档)都有一个 mongo 存储库。

现在我需要通过相同的控制面板应用程序管理这些数据库,动态连接到每个数据库,并使用相同的存储库类(数据库是相同的)。

我知道我可以为存储库指定已知模板,如本 post 中所述。 ,但这意味着我必须在启动时知道数据库的连接属性。我怎样才能实现它的动态行为呢?

最佳答案

您可能想要查看的核心接口(interface)是 MongoDBFactory。您可以通过重写 AbstractMongoConfiguration 中的 mongoDbFactory() 或仅使用 XML 中的普通 bean 定义来提供自定义的 bean。

要在不同数据库之间透明地切换,只需跟踪实现中选择的数据库并根据该数据库返回一个 DB 实例即可。

关于java - Spring Data Mongo - 动态更改存储库模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35017545/

相关文章:

mongodb - 从 Google Compute Engine 远程连接 mongo

sql - 如何在数据库中高效存储大型不断变化的瓦片 map

java - 在java中哪种方式运行线程最好?

java - Spring:根据 View 重定向

java - Hibernate - 从多个字段到同一实体的关系

java - 测试类中的 Jersey 测试 @Autowired 字段为空

java - JdbcOperationsSessionRepository.jdbcSession 不可见

angularjs - 将 Mongoose 模型表示为 Typescript 类

java - 数组列表中的列表问题

java - 记录数量过多时 PDF 生成失败