Spring Data Neo4j 的構建模組

概述

SDN 由可組合的構建塊組成。它構建於 Neo4j Java 驅動之上。Java 驅動的例項透過 Spring Boot 的自動配置本身提供。驅動的所有配置選項都可透過名稱空間 spring.neo4j 訪問。驅動 bean 提供了命令式、非同步和響應式方法來與 Neo4j 互動。

您可以使用驅動在該 bean 上提供的所有事務方法,例如 自動提交事務事務函式 和非託管事務。請注意,這些事務不與正在進行的 Spring 事務繫結。

與 Spring Data 和 Spring 平臺或響應式事務管理器的整合始於 Neo4j 客戶端。客戶端是 SDN 的一部分,透過單獨的 starter spring-boot-starter-data-neo4j 進行配置。該 starter 的配置名稱空間是 spring.data.neo4j

客戶端是對映無關的。它不瞭解您的領域類,您需要負責將結果對映到符合您需求的物件。

更高一層的抽象是 Neo4j 模板。它瞭解您的領域,您可以使用它來查詢任意領域物件。在領域類數量龐大或您不想為每個自定義查詢建立額外的儲存庫抽象的場景中,模板非常方便。

最高一層的抽象是 Spring Data 儲存庫。

SDN 的所有抽象都同時提供命令式和響應式風格。不建議在同一個應用程式中混合使用這兩種程式設計風格。響應式基礎設施需要 Neo4j 4.0+ 資料庫。

image$sdn buildingblocks
圖 1. SDN 構建塊

模板機制類似於其他儲存的模板。有關更多資訊,請參閱 我們的常見問題。Neo4j 客戶端本身是 SDN 特有的。您可以在 附錄 中找到其文件。

在包級別

描述

org.springframework.data.neo4j.config

* 可用於應用程式特定的、帶註解的配置類。如果您的應用程式不依賴 Spring Boot 的自動配置,則抽象基類將很有幫助。

org.springframework.data.neo4j.core

* 命令式或響應式客戶端,可以執行查詢。標記為 @API(status = API.Status.STABLE) 的包可以安全使用。核心包提供了對兩者的訪問。

org.springframework.data.neo4j.core.convert

org.springframework.data.neo4j.core.support

* 對您的領域有幫助,例如指示某個事務可能。

org.springframework.data.neo4j.core.transaction

* 事務轉換為 Spring 託管事務。將命令式和響應式 TransactionManager 都公開為 Neo4jTransactionManager

org.springframework.data.neo4j.repository

org.springframework.data.neo4j.repository.config

* 特別是專用的註解,用於啟用命令式和響應式 Spring Data Neo4j。

org.springframework.data.neo4j.repository.support

* 構建自定義命令式和響應式 Spring Data Neo4j 儲存庫基類。

© . This site is unofficial and not affiliated with VMware.