You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Mongo Legacy Java Driver 4.11.1中MongoClient的getAddress()方法缺失如何替代?

解决MongoDB驱动升级后MongoClient.getAddress()方法替代方案

原3.10.2版本中MongoClient.getAddress()方法返回的是客户端连接的MongoDB服务器地址(包含主机名与端口),在4.11.1版本的mongo-driver-legacy中,可以通过以下方式获取相同信息:

  • 通过集群描述获取服务器地址:
    4.x版本驱动重构了客户端API,集群相关信息统一通过ClusterDescription获取,代码示例:

    // 获取MongoClient实例的集群描述
    ClusterDescription clusterDescription = mongoClient.getClusterDescription();
    // 单节点场景下取第一个服务器地址即可(集群场景可根据需求遍历)
    ServerAddress serverAddress = clusterDescription.getServerAddresses().get(0);
    
    // 获取主机名与端口,与原getAddress()返回值一致
    String host = serverAddress.getHost();
    int port = serverAddress.getPort();
    
  • 注意事项:
    若你的场景是单节点连接,也可以从连接字符串中解析地址,但通过ClusterDescription获取的是实际建立连接的服务器地址,更准确(比如应对配置了路由或自动寻址的场景)。

内容的提问来源于stack exchange,提问作者Olgun Kaya

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.03 13:55:00