Datastax Java 驱动程序 4.x : 如何获取集群名称?

Datastax Java driver 4.x : How to get cluster name?

将 java cassandra 驱动程序从 3.7 升级到 4.0(或更高版本)后 - 我无法解析集群名称。

我需要我的应用程序使用 java 驱动程序连接到的 cassandra 集群的名称。早些时候它以 "Cluster.getMetadata().getClusterName()" 的形式提供。但是在升级到 datastax-driver-core-4.0 或更高版本后-我无法从 CqlSession.getMetadata()..

解析集群名称

这非常重要,因为我已经根据不同的集群隔离了操作。

我相信 java api 不再提供集群名称。 相反,只需从 system.local 查询它:

SimpleStatement statement =SimpleStatement.newInstance("SELECT cluster_name FROM system.local");
ResultSet resultSet = session.execute(statement);
Row row = resultSet.one();
System.out.println(row.getString("cluster_name"));