使用CQL jdbc驱动程序时应该是什么连接字符串

时间:2011-10-07 14:19:25

标签: java cassandra cql

使用CQL jdbc驱动程序时连接字符串应该是什么?

我能否在Java在线使用CQL JDBC驱动程序找到适当/完整的CQL示例?

2 个答案:

答案 0 :(得分:12)

你需要来自apache站点的cql jar。

这是我通过CLI输入数据后使用的基本测试(使用wiki中的示例):

public class CqlJdbcTestBasic {
public static void main(String[] args) {
    Connection con = null;
    try {
        Class.forName("org.apache.cassandra.cql.jdbc.CassandraDriver");
        con = DriverManager.getConnection("jdbc:cassandra:root/root@localhost:9160/MyKeyspace");

        String query = "SELECT KEY, 'first', last FROM User WHERE age=42";

        Statement stmt = con.createStatement();
        ResultSet result = stmt.executeQuery(query);

        while (result.next()) {
            System.out.println(result.getString("KEY"));
            System.out.println(result.getString("first"));
            System.out.println(result.getString("last"));
        }

    } catch (ClassNotFoundException e) {
        e.printStackTrace();
    } catch (SQLException e) {
        e.printStackTrace();
    } finally {
        if (con != null) {
            try {
                con.close();
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            con = null;
        }
    }
}
}

用户/密码(root / root)似乎是随意的,只需一定要指定Keyspace(MyKeyspace)

注意,'first'在查询字符串中引用,因为它是一个CQL关键字

答案 1 :(得分:2)

您也可以尝试使用http://code.google.com/a/apache-extras.org/p/cassandra-jdbc/中的cassandra-jdbc驱动程序。

或者使用以下maven依赖:

<dependency>
    <groupId>org.apache-extras.cassandra-jdbc</groupId>
    <artifactId>cassandra-jdbc</artifactId>
    <version>1.2.1</version>
</dependency>