- Neo4j Tutorial
- Neo4j - Home
- Neo4j - Overview
- Neo4j - Data Model
- Neo4j - Environment Setup
- Neo4j - Building Blocks
- Neo4j CQL Write Clauses
- Neo4j - Merge Command
- Neo4j - Set Clause
- Neo4j - Delete Clause
- Neo4j - Remove Clause
- Neo4j - Foreach Clause
- Neo4j CQL Read Clause
- Neo4j - Match Clause
- Neo4j - Optional Match Clause
- Neo4j - Where Clause
- Neo4j - Count Function
- Neo4j CQL General Clauses
- Neo4j - Return Clause
- Neo4j - Order By Clause
- Neo4j - Limit Clause
- Neo4j - Skip Clause
- Neo4j - With Clause
- Neo4j - Unwind Clause
- Neo4j CQL Functions
- Neo4j - String Functions
- Neo4j - Aggregation Function
- Neo4j CQL Admin
- Neo4j - Backup & Restore
- Neo4j - Index
- Neo4j - Create Unique Constraint
- Neo4j - Drop Unique
- Neo4j Useful Resources
- Neo4j - Quick Guide
- Neo4j - Useful Resources
- Neo4j - Discussion
Spring DATA Neo4j - Architecture
Spring DATA Neo4j Module
Spring DATA module is suitable to implement DAO layer for all kinds of Databases. It improves the application development process by avoiding some unwanted artifacts (DAO Implementations).
- Relational Databases (Oracle, MySQL etc.)
- No SQL Databases(MongoDB, Redis, Apache Cassandra etc.)
- No SQL Graph Databases(Neo4j etc.)
In this Chapter, we are going to discuss about Spring DATA Neo4j Module Architecture. This Architecture is almost similar to for all types of databases mentioned above. It differs only in few component names
Spring DATA Neo4j Architecture
Before starting Spring DATA Neo4j Development, first we will understand this module architecture.
The following diagram shows the Architecture of Spring DATA Neo4j Module
Components of Sprint DATA Neo4J are briefly mentioned below -
Spring DATA Neo4j Repositories
It has provided different API to supports different scenarios
- GraphRepository
- GraphTemplate
- CrudRepository
- PaginationAndSortingRepository
These are Java Classes. Each one has a specific purposes to perform Neo4j DB Operations
S.No. | Spring DATA Neo4j Class | Usage |
---|---|---|
1. | GraphRepository | It is used to perform Basic Neo4j DB operations. |
2. | GraphTemplate | Like other modules, it is Spring Template to perform Neo4j DB operations. |
3. | CrudRepository | It is used to perform Neo4j CRUD operations with Cypher Query Language(CQL). |
4. | PaginationAndSortingRepository | It is used to perform Paging and Sorting of Neo4j CQL Query results. |
Neo4j Drivers
When we use Spring DATA Neo4j Module API to perform some Database Operations, Spring DATA Neo4j Jars internally uses these drivers Jars to interact and perform Neo4j DB Operations
Neo4j Graph Database
It is actual Neo4j DB server where our Graph data is stored.
We will discuss a simple example by using GraphRepository API in the coming chapter.