1. 程式人生 > 其它 >【深入理解TcaplusDB技術】插入資料示例程式碼——[Generic表]

【深入理解TcaplusDB技術】插入資料示例程式碼——[Generic表]

本文準備工作

參見章節: 準備工作

示例程式碼

示例程式碼

import com.tencent.tcaplus.client.Client;
import com.tencent.tcaplus.client.ClientFactory;
import com.tencent.tcaplus.client.Record;
import com.tencent.tcaplus.client.Request;
import com.tencent.tcaplus.client.Response;
import com.tencent.tdr.tcaplus_protocol_cs.TcaplusProtocolCsConstants;

import java.util.ArrayList;
import java.util.List;

public class Example {

   public static void main(String[] arguments) {
       // 1. 準備環境資訊
       // 1.1. 目錄服務地址列表
       List<String> dirList = new ArrayList<String>();
       dirList.add("tcp://x.x.x.x:9999");
       dirList.add("tcp://y.y.y.y:9999");
       // 1.2. 業務ID
       int appId = 1;
       // 1.3. 業務密碼
       String appPassword = "****************";
       // 1.4. 表格組ID
       int tableGroupId = 1;
       // 1.5. 表格名稱
       String tableName = "test";

       // 2. 建立客戶端
       Client client = ClientFactory.createClient(appId, tableGroupId, appPassword, dirList);
       try {
           // 3. 構造插入資料的請求
           // 3.1. 獲取請求物件。為了提升SDK效能,Request物件是複用的
           Request request = client.acquireRequest();
           // 3.2. 設定請求型別和目標表名
           request.setCmd(TcaplusProtocolCsConstants.TCAPLUS_CMD_INSERT_REQ);
           request.setTableName(tableName);
           // 3.3. 設定資料各欄位的值,這裡要注意Key欄位和Value欄位,使用的是不同的方法設定欄位值
           Record record = request.addRecord();
           record.setKeyInt("gameid", 1);
           record.setKeyInt("itemid", 1);
           record.setKeyString("name", "test");
           record.setValueByte("typeid", (byte) 1);
           record.setValueByte("Data", (byte) 1);
           record.setValueString("uname", "test");

           // 4. 傳送請求,並獲取結果
           Response response = client.poll(request);

           // 5. 處理結果
           if (response.getResult() == 0) {
               // 插入資料成功
               // TODO 可在此處新增資料插入成功的後續處理程式碼
          } else {
               // 插入資料失敗
               // TODO 可在此處新增資料插入失敗的後續處理程式碼
          }
      } finally {
           // 6. 銷燬客戶端物件
           ClientFactory.destroyClient(client);
      }
  }

}

 


 

TcaplusDB是騰訊出品的分散式NoSQL資料庫,儲存和排程的程式碼完全自研。具備快取+落地融合架構、PB級儲存、毫秒級時延、無損水平擴充套件和複雜資料結構等特性。同時具備豐富的生態、便捷的遷移、極低的運維成本和五個九高可用等特點。客戶覆蓋遊戲、網際網路、政務、金融、製造和物聯網等領域。