安装

要开始创建 Neo4j Java 应用程序,首先需要安装 Java 驱动程序并获取一个可连接的 Neo4j 数据库实例。

该驱动程序需要 Java 17 或更高版本。

安装驱动程序

如果您已经有一个 Maven 项目,可以将驱动程序作为依赖项添加到您的 pom.xml 文件中

<dependency>
    <groupId>org.neo4j.driver</groupId>
    <artifactId>neo4j-java-driver</artifactId>
    <version>5.28.5</version>
</dependency>
如何为 Neo4j Java 应用程序创建 Maven 项目?

如果您是 Maven 新手,可以下载 Neo4j 演示应用程序示例项目 并将其用作基础,以试验驱动程序并构建您的应用程序。

文件 App.java 提供了一个骨架应用程序。您可以使用以下命令编译并运行该项目

mvn install
java -jar target/neo4j-demo-app-1.0-SNAPSHOT-jar-with-dependencies.jar

对于其他依赖管理系统,请参阅驱动程序的包页面

始终使用最新版本的驱动程序,因为它始终支持以前的 Neo4j LTS 版本以及当前和下一个主要版本。最新的 5.x 驱动程序支持连接到任何 Neo4j 实例(版本 4.4、5.x 和 2025.x)。有关版本之间变化的详细列表,请参阅驱动程序的更新日志

获取 Neo4j 实例

您需要一个正在运行的 Neo4j 数据库才能使用驱动程序。启动本地实例最简单的方法是通过 Docker 容器(需要 docker.io)。以下命令在 Docker 中运行最新版本的 Neo4j,将管理员用户名设置为 neo4j,密码设置为 secretgraph

docker run \
   -p7474:7474 \                       # forward port 7474 (HTTP)
   -p7687:7687 \                       # forward port 7687 (Bolt)
   -d \                                # run in background
   -e NEO4J_AUTH=neo4j/secretgraph \   # set login credentials
   neo4j:latest

或者,您可以通过 Aura 获取一个免费的云实例

您还可以在您的系统上安装 Neo4j,或使用Neo4j Desktop 创建本地开发环境(不用于生产)。

术语表

LTS

长期支持版本是保证在数年内获得支持的版本。Neo4j 4.4 是 LTS 版本,Neo4j 5 也将有一个 LTS 版本。

Aura

Aura 是 Neo4j 的全托管云服务。它提供免费和付费计划。

Cypher

Cypher 是 Neo4j 的图查询语言,可让您从数据库中检索数据。它类似于 SQL,但用于图。

APOC

Cypher 上的优秀过程 (APOC) 是一个函数库(包含许多无法轻易用 Cypher 本身表达的函数)。

Bolt

Bolt 是 Neo4j 实例和驱动程序之间交互所使用的协议。它默认监听端口 7687。

ACID

原子性、一致性、隔离性、持久性 (ACID) 是保证数据库事务可靠处理的属性。符合 ACID 的 DBMS 确保数据库中的数据即使在发生故障时也能保持准确和一致。

最终一致性

如果数据库保证所有集群成员在某个时间点将存储最新版本的数据,则该数据库是最终一致的。

因果一致性

如果集群中的每个成员都以相同的顺序看到读写查询,则数据库是因果一致的。这比最终一致性更强。

NULL

空标记不是一种类型,而是值缺失的占位符。欲了解更多信息,请参阅Cypher → 处理 null

事务

事务是一个工作单元,它要么完全提交,要么在失败时回滚。一个例子是银行转账:它涉及多个步骤,但所有步骤都必须成功或被撤销,以避免资金从一个账户中扣除但未添加到另一个账户的情况。

背压

背压是阻碍数据流动的力。它确保客户端不会因数据处理速度过快而过载。

事务函数

事务函数是由 executeReadexecuteWrite 调用执行的回调。在服务器故障的情况下,驱动程序会自动重新执行该回调。

驱动程序

一个 Driver 对象包含与 Neo4j 数据库建立连接所需的详细信息。

© . All rights reserved.