首頁
云原生多模數(shù)據(jù)庫 Lindorm
操作指南
寬表引擎(兼容HBase或Cassandra)
應(yīng)用開發(fā)教程
基于Cassandra CQL的應(yīng)用開發(fā)
基于Cassandra CQL Java Driver的應(yīng)用開發(fā)
基于Cassandra CQL Java Driver的應(yīng)用開發(fā)
本文介紹通過Cassandra CQL Java Driver連接并使用Lindorm寬表引擎。
前提條件
已安裝Java環(huán)境,要求安裝JDK 1.8及以上版本。
已完成Cassandra CQL Java Driver的安裝,具體操作請參見安裝Cassandra CQL Driver。
已將客戶端的IP地址加入到Lindorm實(shí)例的白名單中,具體操作請參見設(shè)置白名單。
已獲取云原生多模數(shù)據(jù)庫 Lindorm寬表引擎的CQL連接地址,具體操作請參見查看連接地址。
操作步驟
配置連接參數(shù)。
String[] contactPoints = new String[]{ "<host>" }; Cluster cluster = Cluster.builder() .addContactPoints(contactPoints) .withAuthProvider(new PlainTextAuthProvider(username, password)) .build(); cluster.init(); Session session = cluster.connect();
說明<host>
:通過云原生多模數(shù)據(jù)庫 Lindorm控制臺獲取寬表引擎的CQL連接地址,例如:ld-bp17j28j2y7pm****-proxy-lindorm.lindorm.rds.aliyuncs.com
。username
:云原生多模數(shù)據(jù)庫 Lindorm實(shí)例的賬號名,默認(rèn)為root。password
:云原生多模數(shù)據(jù)庫 Lindorm實(shí)例的賬號名對應(yīng)的密碼,如果您忘記密碼可以通過寬表引擎的集群管理系統(tǒng)修改密碼,具體操作請參見修改用戶密碼。
使用Cassandra CQL Java API訪問Lindorm寬表,以下提供訪問示例代碼。
DDL操作
// 創(chuàng)建keyspace,指定對應(yīng)strategy, replication factor。 session.execute( "CREATE KEYSPACE IF NOT EXISTS testKeyspace WITH replication " + "= {'class':'SimpleStrategy', 'replication_factor':1};"); // 創(chuàng)建table,給table指定對應(yīng)的primary key 以及cluster key 和regular key 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操作
// 執(zhí)行insert 操作 session.execute( "INSERT INTO testKeyspace.testTable (id, name, age, address) " + "VALUES (" + "1," + "'testname'," + "11," + "'hangzhou');"); // 執(zhí)行select 操作,這里select * 表示獲取所有列,也可以指定需要select 的列名獲取對應(yīng)列數(shù)據(jù) ResultSet res = session.execute( "SELECT * FROM testKeyspace.testTable ;"); // 如果想要獲取每一列對應(yīng)的數(shù)據(jù),可以如下操作 for (Row row : results) { int id = row.getInt("id"); String name = row.getString("name"); int age = row.getInt("age"); String address = row.getString("address"); } // 關(guān)閉Session session.close(); // 關(guān)閉Cluster cluster.close();
文檔內(nèi)容是否對您有幫助?