此版本仍在开发中,尚不被认为是稳定的。对于最新的稳定版本,请使用 Spring Data Neo4j 7.5.2spring-doc.cadn.net.cn

Spring Data Neo4j 的构建块

概述

SDN 由可组合的构建块组成。 它建立在 Neo4j Java 驱动程序之上。 Java 驱动程序的实例是通过 Spring Boot 的自动配置本身提供的。 驱动程序的所有配置选项都可以在命名空间中访问spring.neo4j. 驱动程序 bean 提供了命令式、异步和响应式方法来与 Neo4j 交互。spring-doc.cadn.net.cn

您可以使用驱动程序在该 Bean 上提供的所有事务方法,例如自动提交事务事务函数和非托管事务。 请注意,这些事务与正在进行的 Spring 事务并不紧密。spring-doc.cadn.net.cn

与 Spring Data 和 Spring 的平台或响应式事务管理器的集成始于 Neo4j 客户端。 客户端是 SDN 的一部分,通过单独的Starters配置,spring-boot-starter-data-neo4j. 该Starters的配置命名空间是spring.data.neo4j.spring-doc.cadn.net.cn

客户端与映射无关。 它不知道您的域类,您负责将结果映射到适合您需求的对象。spring-doc.cadn.net.cn

下一个更高级别的抽象是 Neo4j 模板。 它知道你的域,你可以使用它来查询任意域对象。 该模板在具有大量域类或自定义查询的场景中派上用场,你不想为每个类创建额外的存储库抽象。spring-doc.cadn.net.cn

最高级别的抽象是 Spring Data 存储库。spring-doc.cadn.net.cn

SDN 的所有抽象都以命令式和被动方式出现。 不建议在同一应用程序中混合使用这两种编程风格。 响应式基础设施需要一个 Neo4j 4.0+ 数据库。spring-doc.cadn.net.cn

image$sdn 构建块
图 1.SDN 构建块

模板机制与其他商店的模板类似。 在我们的常见问题解答中查找有关它的更多信息。 Neo4j 客户端本身是 SDN 独有的。 您可以在附录中找到其文档。spring-doc.cadn.net.cn

在包层面

描述

org.springframework.data.neo4j.configspring-doc.cadn.net.cn

* 可用于特定于应用程序的带注释的配置类。摘要 * 基类如果您不依赖 Spring Boot 的自动配置,则很有帮助。这spring-doc.cadn.net.cn

org.springframework.data.neo4j.corespring-doc.cadn.net.cn

* 可以执行查询的命令式或响应式客户端。标记为@API(status * = API.Status.STABLE)可以安全使用。核心包提供对spring-doc.cadn.net.cn

org.springframework.data.neo4j.core.convertspring-doc.cadn.net.cn

org.springframework.data.neo4j.core.supportspring-doc.cadn.net.cn

* 对您的域有用,例如指示某些交易可能是spring-doc.cadn.net.cn

org.springframework.data.neo4j.core.transactionspring-doc.cadn.net.cn

* 事务转换为 Spring 管理的事务。同时暴露命令式和响应式 *TransactionManagerNeo4jTransactionManagerspring-doc.cadn.net.cn

org.springframework.data.neo4j.repositoryspring-doc.cadn.net.cn

org.springframework.data.neo4j.repository.configspring-doc.cadn.net.cn

* 特别专用的注释,以启用命令式和响应式 Spring Data Neo4jspring-doc.cadn.net.cn

org.springframework.data.neo4j.repository.supportspring-doc.cadn.net.cn

* 构建自定义命令式和响应式 Spring Data Neo4j 存储库基类。这spring-doc.cadn.net.cn