Java SDK
Java 是当今最流行、使用最广泛的编程语言,因此 UrnaDB 首先提供对 Java 的支持,UrnaDB 的 Java SDK 为开发者提供了简洁高效的数据库操作接口,使开发者用户能够轻松将 UrnaDB 集成到 Java 应用程序中。通过 Java SDK 可以充分利用 Java 语言的静态类型系统和丰富的生态工具链,实现类型安全的数据操作和完善的 IDE 智能提示支持。
🧰 SDK 功能
-
类型安全 利用 Java 强类型系统,在编译期发现潜在错误,提供完整的类型检查和 IDE 智能提示,SDK 通过泛型和注解机制确保数据类型的正确性,避免运行时类型转换异常,让开发者在编写代码时就能发现潜在问题。
-
简单易用 提供直观的 API 设计,无需学习复杂的 SQL 语法,通过方法链式调用完成数据操作,使用 Lambda 函数式编程风格进行数据交互操作,采用 Builder 模式和流式 API 设计,让数据库操作代码更加简洁易读,降低学习成本和维护难度。
🚀 快速开始
Important
UrnaDB 的 Java SDK 目前仅支持 Maven 项目依赖包构建管理工具,并且 SDK 要求兼容 JavaSE 17 或更高版本。如果用户使用其他构建方式,可以直接下载对应版本的 SDK 的 Jar 包,手动管理依赖和项目构建。在 Maven 项目中只需在 pom.xml 中添加对应版本的 UrnaDB Java SDK 依赖坐标信息,即可获取到 Java SDK 依赖的 Jar 包文件。
使用 Maven 构建的项目,添加 SDK 依赖示例如下:
<dependency>
<groupId>io.github.urnadb</groupId>
<artifactId>urnadb-java-sdk</artifactId>
<version>1.0.0</version>
</dependency>在添加依赖时请注意 SDK 版本与使用的 UrnaDB 数据库版本的匹配,以确保两者具有良好的兼容性和稳定性。
📈 Table 命名空间
相较于基于 HTTP 协议的数据交互方式,官方更推荐使用 SDK 来进行操作的,例如使用 Java 语言的 SDK 可以使用 Lambda 函数式编程风格进行数据交互操作。下面是创建一张名为 users 表并且向 users 表中插入一条数据记录,这条操作类似于关系数据库 SQL 中的 INSERT … INTO … VALUES … 语句,代码如下:
// 第二参数支持设置 120 秒
var ok = sdk.createTable("users",120);
// tables 支持重载 put 还可以直接插入一个 Object 对象实例
var id = sdk.tables("users").put(p -> {
p.set("name", "Leon")
.set("age", 18)
.set("config", Map.of("theme", "dark", "font", 14))
.set("meta", new Meta("author", "leon"))
.set("extra", m -> {
m.put("role", "admin");
m.put("verified", true);
});
});根据条件对 Table 中已有数据记录进行部分字段数据内容更新的操作,这个操作类似于关系数据库 SQL 中的 UPDATE … SET … WHERE … 语句,代码示例如下:
var count = sdk.tables("users").patch(p -> {
p.where(w -> w.eq("name","Leon"));
p.sets(s -> s
.set("age", 25)
.set("active", true)
.set("meta", m -> {
m.put("editor", "system");
})
);
});对 Table 中已有的数据记录,执行条件删除操作,类似于关系数据库 SQL 中的 DELETE FROM … WHERE … 的语句,代码如下:
var count = sdk.tables("users").remove(r ->
r.where(w -> w.id(4))
);对 Table 中已有的数据记录,执行条件查询操作,类似于关系数据库 SQL 中的 SELECT * FROM … WHERE … 的语句,代码如下:
var user = sdk.tables("users").query(q ->
q.where(w -> w.eq("age", 18))
);敬请期待更多详细内容 🚚 !