1. 概述
OrientDB 是一款开源的多模型 NoSQL 数据库技术,支持图(Graph)、文档(Document)、键值(Key-Value)、地理空间(GeoSpatial)和响应式(Reactive)模型,同时使用 SQL 语法管理查询。
本文将介绍 OrientDB Java API 的安装与使用方法。
2. 安装
首先需要安装二进制包:
- 下载最新稳定版 OrientDB(本文编写时为 2.2.x)
- 解压并移动到指定目录(设为
ORIENTDB_HOME
),确保将bin
文件夹添加到环境变量 - 编辑
$ORIENTDB_HOME/bin/orientdb.sh
文件:- 将
ORIENTDB_DIR
替换为 OrientDB 实际安装路径 - 将
USER_YOU_WANT_ORIENTDB_RUN_WITH
替换为系统用户名
- 将
现在 OrientDB 已准备就绪,可通过 orientdb.sh <option>
脚本操作:
start
:启动服务器status
:检查状态stop
:停止服务器
⚠️ 注意:start
和 stop
操作需要用户密码(在 orientdb.sh
中设置)
服务器启动后占用 2480 端口,可通过以下 URL 访问:
详细安装说明参考官方文档
环境要求:Java 1.7 或更高版本。历史版本可在这里获取。
3. OrientDB Java API 设置
初始化数据库连接示例:
@BeforeClass
public static void setup() {
String orientDBFolder = System.getenv("ORIENTDB_HOME");
db = new OObjectDatabaseTx("plocal:"
+ orientDBFolder + "/databases/BaeldungDBThree")
.open("admin", "admin");
}
核心操作示例
统计记录数
无需编写 SQL 即可统计作者数量:
long authorsCount = db.countClass(Author.class);
条件查询
查询等级为 7 的作者:
@Test
public void givenDB_whenSavingAuthors_thenWeGetOnesWithLevelSeven() {
// 清空旧数据
for (Author author : db.browseClass(Author.class)) {
db.delete(author);
}
// 创建测试数据
Author authorOne
= db.newInstance(Author.class, "Leo", "Marta", 7);
db.save(authorOne);
Author authorTwo
= db.newInstance(Author.class, "Lucien", "Aurelien", 9);
db.save(authorTwo);
// 执行查询
List<Author> result
= db.query(new OSQLSynchQuery<Author>(
"select * from Author where level = 7"));
assertEquals(1, result.size());
}
✅ 关键点:
- 使用
newInstance()
创建对象 - 通过
OSQLSynchQuery
执行 SQL 查询 - 支持链式操作简化代码
高级用法参考官方指南
5. 结论
本文介绍了 OrientDB Java API 的核心使用方法,包括:
- 数据库安装与配置
- 基础 CRUD 操作
- 简单查询实现
- 字段验证机制
完整代码示例可在 GitHub 获取。
踩坑提示:生产环境使用时务必配置连接池,避免频繁创建连接导致性能问题。