Head's Up! These forums are read-only. All users and content have migrated. Please join us at community.neo4j.com.
05-07-2021 06:35 AM
Hi Neo4J Community,
We are integrating our Neo4j graph database with an application. We are using rest endpoint for an application to query on graph database. It works quite well.
Request Type: Post
EndPoint: http://Neo4JHostMachine:7474/db/data/transaction/commit
Body:
{
"statements" : [ {
"statement" : "MATCH (n:CustomerDetails) where n.customerId = '7897987' RETURN n"
}]
}
In Relational Databases we encapsulate data logic in StoreProcedure and Expose only SP name to the application end for data request.
I did little RnD and found in Neo4J it can be done through User Defined Stored Procedures using Java drivers and JARs.
05-07-2021 11:59 AM
If the logic that you want to execute can be done in pure cypher alone, do not use a plugin. It's just more work than necessary. You will always be better off using a Neo4j official driver for one of the programming languages, or the transacational HTTP API.
Where you need plugins is when you need to mix and match other Java APIs. For example, imagine two scenarios:
In these cases, you might take a java library and use that as a dependency for your plugin. Your plugin might include custom cypher procedures and functions, so that other cypher clients could:
CALL integration.sharepoint()
These are the cases where I'd use a plugin (when I need to use third party libraries close to the database). If you can avoid plugins and write such integrations externally as clients of the database, this is a better idea.
All the sessions of the conference are now available online