• Cassandra数据库Java訪问


    针对的时Cassandra 2.0 数据库

    Java本地client訪问Cassandra,首先建立Javaproject,使用Maven进行管理。

    引入依赖:

    <dependency>
        <groupId>com.datastax.cassandra</groupId>
        <artifactId>cassandra-driver-core</artifactId>
        <version>2.1.0</version>
    </dependency>

    1. 类似Elasticsearch的方式,如今client构建一个集群对象:

    Cluster cluster = Cluster.builder()
                    .addContactPoint("your ip")
                    .build();
            Metadata metadata = cluster.getMetadata();
            System.out.printf("Connected to cluster: %s
    ",
                    metadata.getClusterName());
            for (Host host : metadata.getAllHosts()) {
                System.out.printf("Datatacenter: %s; Host: %s; Rack: %s
    ",
                        host.getDatacenter(), host.getAddress(), host.getRack());
            }

    2. 通过一个Session对象。实现对Cassandra的全部增删改查。

    Session session = cluster.connect();


    3. 通过Session对象实现全部的DML等操作。 (PS:在对 Cassandra 进行操作之前,建议先了解 Cassandra 的架构以及数据组织形式)

    a. 我们首先建立一个Schema:

    <pre name="code" class="java">ResultSet results = session.execute("SELECT * FROM simplex.playlists ");
    
            System.out.println(String.format("%-30s	%-20s	%-20s
    %s", "title", "album", "artist",
                    "-------------------------------+-----------------------+--------------------"));
            for (Row row : results) {
                System.out.println(String.format("%-30s	%-20s	%-20s", row.getString("title"),
                        row.getString("album"), row.getString("artist")));
            }
            System.out.println();

    session.execute("CREATE KEYSPACE simplex WITH replication " + "= {'class':'SimpleStrategy', 'replication_factor':3};");

    
    b.建立一个Table:
    

    session.execute(
                    "CREATE TABLE simplex.songs (" +
                            "id uuid PRIMARY KEY," +
                            "title text," +
                            "album text," +
                            "artist text," +
                            "tags set<text>," +
                            "data blob" +
                            ");");
    c. 插入数据:

    session.execute(
                    "INSERT INTO simplex.songs (id, title, album, artist, tags) " +
                            "VALUES (" +
                            "756716f7-2e54-4715-9f00-91dcbea6cf50," +
                            "'La Petite Tonkinoise'," +
                            "'Bye Bye Blackbird'," +
                            "'Joséphine Baker'," +
                            "{'jazz', '2013'})" +
                            ";");
    d. 查询数据:

    ResultSet results = session.execute("SELECT * FROM simplex.playlists ");
    
            System.out.println(String.format("%-30s	%-20s	%-20s
    %s", "title", "album", "artist",
                    "-------------------------------+-----------------------+--------------------"));
            for (Row row : results) {
                System.out.println(String.format("%-30s	%-20s	%-20s", row.getString("title"),
                        row.getString("album"), row.getString("artist")));
            }
            System.out.println();


  • 相关阅读:
    2019icpc上海站 打星体验,首次感想 D K代码
    P1983 车站分级 思维+拓扑排序
    POJ 2352 Stars Treap & 线段树
    POJ 2761 Feed the dogs 基础Treap
    POJ 1442 Black Box 基础Treap
    CodeForces R285 Div2
    HDU 5145 NPY and girls 莫队算法
    2014 上海赛区小结
    2014 牡丹江赛区总结
    HDU 5125 Magic Ball DP+树状数组
  • 原文地址:https://www.cnblogs.com/lxjshuju/p/6837304.html
Copyright © 2020-2023  润新知