【问题标题】:Spring with mongo-java-driver Use Azure Cosmos DB as MongoDBSpring with mongo-java-driver 使用 Azure Cosmos DB 作为 MongoDB
【发布时间】:2018-02-21 18:04:34
【问题描述】:

我正在尝试在我的 Spring boot 应用中使用 Azure Cosmos DB 而不是 MongoDB

目前,我正在使用 mongo.host/database/port 属性。我找不到可以设置 SSL 选项和 replicaSet 或完整客户端 URI 的位置。

这是他们建议的代码,它正在工作,但它对我没有帮助......

MongoClient mongoClient = new MongoClient(
    new MongoClientURI("mongodb://[user]:[pass]@[host]:[port]/?ssl=true&replicaSet=globaldb"));

【问题讨论】:

  • “我正在尝试使用 Azure Cosmos DB 而不是 MongoDB”——这不是一个明智的想法。尽管声称“兼容性”,但苹果根本不是橙子。如果您想使用 XYZ 数据库引擎,那么我强烈建议您实际使用 XYZ 数据库引擎的原生 API。有些事情会奏效,有些则不会。大多数报告都严重依赖于“不”,它并没有逃脱注意,曾经发布的“兼容性矩阵”详细信息现在即使不是不可能也很难找到。兼容层并不是什么新鲜事物。从历史上看,他们从来没有辜负人们的要求。

标签: java mongodb spring-boot azure-cosmosdb mongo-java-driver


【解决方案1】:

您可以尝试只使用“spring.data.mongodb.uri”属性而不是单独指定主机/数据库/端口吗?

官方文档 (https://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#boot-features-connecting-to-mongodb) 在连接副本集时也推荐这种方法。

How to configure spring-data-mongodb to use a replica set via properties也讨论了这个问题

【讨论】:

  • 谢谢,我已经尝试了 URI,现在它可以工作了。问题是我错误地用我的测试源覆盖了 AbstractMongoConfiguration bean,这就是参数不起作用的原因。
猜你喜欢
  • 2021-11-14
  • 1970-01-01
  • 1970-01-01
  • 2023-02-21
  • 2019-03-30
  • 1970-01-01
  • 1970-01-01
  • 2018-04-10
  • 2020-08-03
相关资源
最近更新 更多