すべてのプロダクト
Search
ドキュメントセンター

Lindorm:Java 用 Cassandra クライアントドライバーを使用してアプリケーションを開発する

最終更新日:Mar 21, 2025

このトピックでは、Java 用 Cassandra クライアントドライバーを使用して、Cassandra Query Language(CQL)経由で LindormTable に接続して使用する方法について説明します。

前提条件

  • Java Development Kit(JDK)V1.8 以降がインストールされていること。

  • CQL 経由で Java 用 Cassandra クライアントドライバーがインストールされていること。詳細については、Cassandra クライアントドライバーのインストールをご参照ください。

  • クライアントの IP アドレスが Lindorm インスタンスのホワイトリストに追加されていること。詳細については、ホワイトリストの設定をご参照ください。

  • [cassandra SQL 用 Lindormtable エンドポイント]を取得していること。詳細については、エンドポイントの表示をご参照ください。获取连接地址

手順

  1. 接続パラメーターを設定します。

     String[] contactPoints = new String[]{
          "<host>"
     };
      
     Cluster cluster = Cluster.builder()
          .addContactPoints(contactPoints)      
          .withAuthProvider(new PlainTextAuthProvider(username, password))
          .build();
     cluster.init();
     Session session = cluster.connect();
    説明
    • <host> を、Lindorm コンソールで取得した [cassandra SQL 用 Lindormtable エンドポイント] に置き換えます。例:ld-bp17j28j2y7pm****-proxy-lindorm.lindorm.rds.aliyuncs.com

    • username を、Lindorm インスタンスへの接続に使用できるユーザー名に置き換えます。デフォルトのユーザー名は root です。

    • password を、Lindorm インスタンスへの接続に使用できるパスワードに置き換えます。パスワードを忘れた場合は、LindormTable の [クラスター管理システム] に移動してパスワードを変更できます。詳細については、ユーザーのパスワードの変更をご参照ください。

  2. Java 用 Cassandra クライアントドライバーの API 操作を使用して、CQL 経由で Lindorm ワイドテーブルにアクセスします。次のコードスニペットは、Lindorm ワイドテーブルにアクセスする方法の例を示しています。

    • DDL 操作

      // キー スペースを作成します。キー スペースのレプリケーション戦略とレプリケーション係数を設定します。
          session.execute(
                      "CREATE KEYSPACE IF NOT EXISTS testKeyspace WITH replication "
                              + "= {'class':'SimpleStrategy', 'replication_factor':1};");
      
       // テーブルを作成し、テーブルのプライマリキー、クラスターキー、および通常キーを指定します。
          session.execute(
                      "CREATE TABLE IF NOT EXISTS testKeyspace.testTable ("
                              + "id int PRIMARY KEY,"
                              + "name text,"
                              + "age int,"
                              + "address text"
                              + ");");    
      
       // テーブルをクリアします。
          session.execute("TRUNCATE TABLE testKeyspace.testTable;");
       // テーブルを削除します。
          session.execute("DROP TABLE testKeyspace.testTable ");
    • DML 操作

      // INSERT ステートメントを実行します。
          session.execute(
                      "INSERT INTO testKeyspace.testTable (id, name, age, address) "
                              + "VALUES ("
                              + "1,"
                              + "'testname',"
                              + "11,"
                              + "'hangzhou');");
          // SELECT ステートメントを実行します。テーブル内のすべての列を照会する場合は、SELECT * を使用します。照会する列を指定することもできます。
          ResultSet res = session.execute(
                      "SELECT * FROM testKeyspace.testTable ;");
      
          // 各列のデータを照会する場合は、次のステートメントを実行します。
          for (Row row : results)
          {
              int id = row.getInt("id");
              String name = row.getString("name");
              int age = row.getInt("age");
              String address = row.getString("address");
          }
      
          // セッションを閉じます。
          session.close();
          // クラスターをシャットダウンします。
          cluster.close();