ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

【深入理解TcaplusDB技术】读取列表指定位置数据示例代码——[List表]

2022-04-24 14:31:05  阅读:124  来源: 互联网

标签:tcaplus 示例 List TcaplusDB request client import com


【深入理解TcaplusDB技术】读取列表指定位置数据示例代码——[List表]

本文准备工作

参见章节: 准备工作

示例代码

示例代码

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. 设置请求类型和目标表名。注意:目标表必须是List表
           request.setCmd(TcaplusProtocolCsConstants.TCAPLUS_CMD_LIST_GET_REQ);
           request.setTableName(tableName);
           // 3.3. 由于List表中,可以多个Key相同的数据,因此调用些接口时,
           //     需要指定取数据列表中的第几个数据,本例中的0,表示取第1个,以此类推
           Record record = request.addRecord(0);
           // 3.4. 设置列表各个Key字段的值
           record.setKeyInt("gameid", 1);
           record.setKeyInt("itemid", 1);
           record.setKeyString("name", "test");
           // 3.5. 添加需要查询的Value字段
           request.addFieldName("typeid");
           request.addFieldName("Data");
           request.addFieldName("uname");

           // 4. 发送请求,并获取结果
           Response response = client.poll(request);

           // 5. 处理结果
           if (response.getResult() == 0) {
               // 读取数据成功
               Record result = response.fetchRecord();
               // TODO 可在此处添加数据读取成功的后续处理代码
          } else {
               // 读取数据失败
               // TODO 可在此处添加数据读取失败的后续处理代码
          }
      } finally {
           // 6. 销毁客户端对象
           ClientFactory.destroyClient(client);
      }
  }

}

 


 

img

TcaplusDB是腾讯出品的分布式NoSQL数据库,存储和调度的代码完全自研。具备缓存+落地融合架构、PB级存储、毫秒级时延、无损水平扩展和复杂数据结构等特性。同时具备丰富的生态、便捷的迁移、极低的运维成本和五个九高可用等特点。客户覆盖游戏、互联网、政务、金融、制造和物联网等领域。

标签:tcaplus,示例,List,TcaplusDB,request,client,import,com
来源: https://www.cnblogs.com/TcaplusDBers/p/16185140.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有