搶佔先機
VMware 提供培訓和認證,以加速您的進步。
瞭解更多尊敬的 Spring 社群:
我們很高興地宣佈,帶有 Neo4j 支援的 Spring Data Graph 專案的第二個版本 (1.1.0.RELEASE) 現已釋出!
在 2011 年 4 月首次公開發布 Spring Data Graph 後,我們主要關注使用者反饋。
透過改進工具相關的文件和升級的 AspectJ 版本,我們解決了使用者報告的許多 AspectJ 問題。 使用最新的 STS 和 Eclipse,並希望使用 Idea11,可以開發 Spring Data Graph 應用程式而不會出現紅色波浪線。 為了進一步簡化開發,我們還為 ant/ivy 提供了示例構建指令碼,併為 gradle 提供了外掛。
當然,我們與 Neo4j 的開發保持同步,目前使用的是 Neo4j (1.4.1) 的最新穩定版本。
在 Neo4j 開發的過去幾個月中,改進的查詢(Cypher、Gremlin)支援是重要的方面之一。 因此,我們努力在各個層面上支援它。 現在,可以從 Spring Data Graph 儲存庫、Neo4j-Template 執行 Cypher 查詢,也可以作為動態欄位註釋的一部分並透過引入的實體方法執行 Cypher 查詢。 Gremlin 指令碼也是如此。 這種新的表現力有什麼可能? 讓我們來看看。
例如,在儲存庫中
public interface PersonRepository extends GraphRepository, NamedIndexRepository {
@Query("start team=(%team) match (team)-[:persons]->(member) return member")
Iterable findAllTeamMembers(@Param("team") Group team);
@Query(value = "g.v(team).out('persons')", type = QueryType.Gremlin)
Iterable findAllTeamMembersGremlin(@Param("team") Group team);
}
Neo4j Template API 進行了全面改造,從而減少了許多方法,並更加註重重點。 高階查詢結果處理功能(型別轉換、對映、單個結果、處理程式等)現在使用更流暢的 API 實現。 這種新的 API 適用於所有型別的查詢,無論是索引查詢、圖遍歷、Cypher 查詢還是 Gremlin 指令碼。
template.query("start n=(0) match n-->m return m", null).to(Node.class);
template.execute("g.v(0).out", null).to(Node.class); template.lookup("relationship", "name", "rel1").to(String.class, new PropertyContainerNameConverter()).single(); template.traverse(referenceNode, traversalDescription).handle(new Handler<Path>() { public void handle(Path value) { final String name = (String) value.endNode().getProperty("name", ""); resultSet.add(name); }});
REST API 包裝器也進行了內部重新整理,並增加了對遠端查詢 Cypher 和 Gremlin 的支援。 這使得物件圖對映和 Neo4j Template 都可以針對遠端 Neo4j-REST-Server 執行。
非常感謝社群的寶貴反饋、程式碼貢獻和討論。 SpringSource 和 Neo-Technology 團隊之間的合作一如既往地愉快。
請從 Maven Central 或 SpringSource.org 檢視當前版本。 如果您想討論 Spring Data Graph 專案,請務必訪問 Spring 論壇。 我們在 github 上公開託管該專案,供您 fork、評論和貢獻。
我們將在 9 月 8 日舉辦一個 網路研討會,以快速介紹 Spring Data Graph。
Spring Data Graph 將更名為“Spring Data Neo4j”,因為這就是它的目的: “在 Spring Framework 環境中支援 Neo4j 圖資料庫。” 這已經在其更改的包結構中投下了第一個跡象。
我們將專注於另一個基於對映的實現,該實現也可以在沒有 AspectJ 的情況下工作。 另一個主要重點將是遠端 REST-API,隨著 PaaS 提供商提供的託管 Neo4j 服務的可用性,它變得越來越重要。
Spring Data Graph 指南手冊將作為 InfoQ Mini Book 出版,並在 10 月的 Spring One 會議上提供印刷版。
Neo Technology 將出席 Spring One,討論 NOSQL、圖資料庫和 Spring Data Neo4j。 我們也希望為會議貢獻一些意想不到的活動和技術。 敬請關注。
Michael Hunger Spring Data Neo4j 專案負責人
專案資源: 下載 | JavaDocs | Spring Data Graph 指南手冊 | 變更日誌