Cassandra 数据库已安装在具有以下配置的服务器计算机上: cqlsh 4.1.1 | Cassandra 2.0.7.31 | CQL 规范 3.1.1 | Thrift协议(protocol)19.39.0
我想通过java通过eclipse连接到一个键空间“X”。
以下是我的代码:
package cassandraConnectivity;
import java.sql.DriverManager;
import java.sql.SQLException;
public class connect{
public static java.sql.Connection con = null;
public static void main(String[] a)throws ClassNotFoundException, SQLException{
try {
Class.forName("org.apache.cassandra.cql.jdbc.CassandraDriver");
con=DriverManager.getConnection("jdbc:cassandra:username/pswd@<IP>/<KS>");
System.out.println("cassandra connection established");
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
我还在我的 Eclipse 构建路径中添加了以下 jar 文件:
- apache-cassandra-0.8.4.jar
- apache-cassandra-cql-1.0.3.jar
- apache-cassandra-thrift-0.8.4.jar
- casssandra-clientutil-1.2.1.jar
- cassandra-jdbc-1.2.5.jar
- commons-lang-2.4.jar
- Guava -r08.jar
- libthrift-0.6.jar
- log4j-1.2.16.jar
- slf4j-log4j12-1.6.1.jar
- slf4j.api-1.6.1.jar
我还禁用了安装 cassandra 的远程位置的防火墙
但尽管如此,我还是收到了错误:
Exception in thread "main" org.apache.cassandra.cql.jdbc.DriverResolverException: java.net.ConnectException: Connection refused: connect at org.apache.cassandra.cql.jdbc.CassandraConnection.(CassandraConnection.java:91) at org.apache.cassandra.cql.jdbc.CassandraDriver.connect(CassandraDriver.java:86) at java.sql.DriverManager.getConnection(Unknown Source) at java.sql.DriverManager.getConnection(Unknown Source) at cassandraConnectivity.connect.main(connect.java:15)
此外,它无法找到上述外部添加的 jar 文件的来源
请告诉我哪里出错了
最佳答案
JDBC 驱动程序非常旧。您应该使用新的 native Java 驱动程序,您可以获取 here .
关于java - 通过 Eclipse 连接到远程 Cassandra 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25617726/