跳到主要内容

快速开始

本指南将帮助您在 5 分钟内 完成 Lovrabet Java OpenSDK 的安装、配置和第一次 API 调用。


前置要求

  • JDK: Java 8 或更高版本
  • 构建工具: Maven 3.x 或 Gradle 7.x+
  • Lovrabet 账户: 需要在 Lovrabet 云兔平台 注册账户

第一步:引入依赖

Maven 配置

在您的 pom.xml 中添加依赖:

<dependency>
<groupId>com.lovrabet.runtime</groupId>
<artifactId>lovrabet-runtime-opensdk</artifactId>
<version>1.0.0-SNAPSHOT</version>
</dependency>

Gradle 配置

在您的 build.gradle 中添加依赖:

implementation 'com.lovrabet.runtime:lovrabet-runtime-opensdk:1.0.0-SNAPSHOT'

第二步:获取访问凭证

在使用 SDK 之前,您需要获取两个关键信息:

2.1 获取应用编码(AppCode)

  1. 登录 Lovrabet 云兔平台
  2. 进入 应用管理 页面
  3. 选择或创建一个应用
  4. 复制应用的 应用编码(AppCode),格式如:app-c2dd52a2

2.2 生成访问密钥(AccessKey)

  1. 在应用详情页,找到 OpenAPI 设置
  2. 开通 OpenAPI 功能
  3. 点击 生成访问密钥
  4. 保存生成的 AccessKey,格式如:ak-OD8xWhMOsL5ChQ3Akhv4uYYiu1fPOFQGVF9BULIeov8

⚠️ 重要提醒

  • AccessKey 仅显示一次,请妥善保管
  • 不要将 AccessKey 提交到代码仓库
  • 建议使用环境变量或配置文件管理

第三步:编写第一个程序

创建一个 Java 类,获取数据集列表:

package com.example.demo;

import com.lovrabet.runtime.opensdk.client.LovrabetSDKClient;
import com.lovrabet.runtime.opensdk.model.LovrabetRequest;
import com.lovrabet.runtime.opensdk.model.LovrabetResult;

import java.util.List;

public class QuickStartDemo {
public static void main(String[] args) {
// 1. 配置访问凭证(替换为您自己的凭证)
String accessKey = "ak-OD8xWhMOsL5ChQ3Akhv4uYYiu1fPOFQGVF9BULIeov8";
String appCode = "app-c2dd52a2";
String baseUrl = "https://runtime.lovrabet.com/openapi";

// 2. 创建 SDK 客户端
LovrabetSDKClient sdkClient = new LovrabetSDKClient(accessKey, baseUrl);

// 3. 构建请求参数
LovrabetRequest request = new LovrabetRequest();
request.setAppCode(appCode);

// 4. 调用 API 接口
LovrabetResult<?> result = sdkClient.getDatasetCodeList(request);

// 5. 处理返回结果
if (result.isSuccess()) {
List<String> datasetList = (List<String>) result.getData();
System.out.println("✅ 获取成功!");
System.out.println("数据集数量: " + datasetList.size());
System.out.println("数据集列表: " + datasetList);
} else {
System.err.println("❌ 获取失败: " + result.getResultMsg());
}
}
}

运行结果

如果一切正常,您将看到类似的输出:

✅ 获取成功!
数据集数量: 8
数据集列表: [b460abdbb0fb49e1865110d9dfbbc9b4, 32c036010c504757b80d438e3c0ec8b7, ...]

第四步:完成一次完整的 CRUD 操作

接下来,让我们完成一个完整的数据生命周期管理示例:创建数据 → 查询数据 → 更新数据。

package com.example.demo;

import com.lovrabet.runtime.opensdk.client.LovrabetSDKClient;
import com.lovrabet.runtime.opensdk.model.LovrabetRequest;
import com.lovrabet.runtime.opensdk.model.LovrabetResult;

import java.util.HashMap;
import java.util.Map;

public class CRUDDemo {
// 配置常量
private static final String ACCESS_KEY = "ak-OD8xWhMOsL5ChQ3Akhv4uYYiu1fPOFQGVF9BULIeov8";
private static final String BASE_URL = "https://runtime.lovrabet.com/openapi";
private static final String APP_CODE = "app-c2dd52a2";
private static final String MODEL_CODE = "32c036010c504757b80d438e3c0ec8b7";

public static void main(String[] args) {
// 创建 SDK 客户端
LovrabetSDKClient sdkClient = new LovrabetSDKClient(ACCESS_KEY, BASE_URL);

// 步骤 1: 创建数据
System.out.println("=== 步骤 1: 创建数据 ===");
Long newId = createData(sdkClient);
if (newId == null) {
System.err.println("创建数据失败,流程终止");
return;
}
System.out.println("✅ 创建成功,新记录 ID: " + newId);

// 步骤 2: 查询单条数据
System.out.println("\n=== 步骤 2: 查询数据 ===");
Map<String, Object> data = getOneData(sdkClient, newId);
if (data != null) {
System.out.println("✅ 查询成功: " + data);
}

// 步骤 3: 更新数据
System.out.println("\n=== 步骤 3: 更新数据 ===");
boolean updateSuccess = updateData(sdkClient, newId);
if (updateSuccess) {
System.out.println("✅ 更新成功");
}

// 步骤 4: 再次查询确认更新
System.out.println("\n=== 步骤 4: 确认更新 ===");
Map<String, Object> updatedData = getOneData(sdkClient, newId);
if (updatedData != null) {
System.out.println("✅ 更新后的数据: " + updatedData);
}
}

/**
* 创建数据
*/
private static Long createData(LovrabetSDKClient sdkClient) {
LovrabetRequest request = new LovrabetRequest();
request.setAppCode(APP_CODE);
request.setModelCode(MODEL_CODE);

// 设置业务数据
Map<String, Object> paramMap = new HashMap<>();
paramMap.put("TEXT_1", "测试订单-001");
paramMap.put("NUMBER_3", 100);
paramMap.put("NUMBER_8", 999);
request.setParamMap(paramMap);

LovrabetResult<String> result = sdkClient.create(request);

if (result.isSuccess()) {
return Long.parseLong(result.getData());
} else {
System.err.println("❌ 创建失败: " + result.getResultMsg());
return null;
}
}

/**
* 查询单条数据
*/
private static Map<String, Object> getOneData(LovrabetSDKClient sdkClient, Long id) {
LovrabetRequest request = new LovrabetRequest();
request.setAppCode(APP_CODE);
request.setModelCode(MODEL_CODE);
request.setId(id);

LovrabetResult<?> result = sdkClient.getOne(request);

if (result.isSuccess()) {
return (Map<String, Object>) result.getData();
} else {
System.err.println("❌ 查询失败: " + result.getResultMsg());
return null;
}
}

/**
* 更新数据
*/
private static boolean updateData(LovrabetSDKClient sdkClient, Long id) {
LovrabetRequest request = new LovrabetRequest();
request.setAppCode(APP_CODE);
request.setModelCode(MODEL_CODE);
request.setId(id);

// 只更新部分字段
Map<String, Object> paramMap = new HashMap<>();
paramMap.put("TEXT_1", "测试订单-001(已更新)");
paramMap.put("NUMBER_3", 200);
request.setParamMap(paramMap);

LovrabetResult<String> result = sdkClient.update(request);

if (result.isSuccess()) {
return true;
} else {
System.err.println("❌ 更新失败: " + result.getResultMsg());
return false;
}
}
}

运行结果

=== 步骤 1: 创建数据 ===
✅ 创建成功,新记录 ID: 1234

=== 步骤 2: 查询数据 ===
✅ 查询成功: {id=1234, TEXT_1=测试订单-001, NUMBER_3=100, NUMBER_8=999}

=== 步骤 3: 更新数据 ===
✅ 更新成功

=== 步骤 4: 确认更新 ===
✅ 更新后的数据: {id=1234, TEXT_1=测试订单-001(已更新), NUMBER_3=200, NUMBER_8=999}

常见问题

Q1: 提示 "AccessKey 无效" 怎么办?

检查清单

  • ✅ AccessKey 是否复制完整(不要有多余空格)
  • ✅ 应用是否已开通 OpenAPI 功能
  • ✅ AccessKey 是否未过期

Q2: 提示 "必填字段缺失" 怎么办?

不同的数据集有不同的字段要求,请:

  1. 登录 Lovrabet 云兔平台
  2. 进入数据集管理,查看字段定义
  3. 确保必填字段都已提供值

Q3: 如何知道数据集的字段名?

字段名通常遵循规则:字段类型_序号,例如:

  • TEXT_1 - 第 1 个文本字段
  • NUMBER_3 - 第 3 个数字字段
  • SELECT_4 - 第 4 个选择字段

您可以在 Lovrabet 云兔平台的数据集定义中查看完整的字段列表。


下一步

🎉 恭喜!您已经完成了快速入门。

建议按以下顺序继续学习

  1. 📖 快速开始 ← 当前位置 5 分钟完成第一个 CRUD 程序

  2. 📚 核心概念 ← 推荐下一步 深入理解 SDK 工作原理

  3. 📋 API 参考 查阅完整的接口文档

  4. 💡 业务示例 学习 5 个真实场景的实现

  5. 🚀 最佳实践 掌握生产环境优化技巧

  6. 常见问题 解决使用中的疑问


需要帮助? 访问 常见问题 或联系 service@lovrabet.com