2017-07-10 4 views
2

Ich konfigurierte Maven und schaffte es, Beispiel-Plugins wie FullTextIndex (https://github.com/neo4j-contrib/neo4j-rdf/blob/master/src/main/java/org/neo4j/rdf/fulltext/FulltextIndex.java) auszuführen.Wie erstelle ich ein einfaches Plugin in Neo4j?

Noch habe ich Mühe, eine einfache Funktion von mir selbst zu erstellen. Ich möchte eine Java-Funktion haben, die einen Knoten nach ID finden und seine Eigenschaften zurückgeben kann.

Ich weiß, ich kann dies in Cypher tun, aber das Ziel ist es, die Logik der Plugins für Neo4j zu verstehen.

call example.function(217) 

OUTPUT e

INPUT ID:

So nach dem Plugin Import sollte ich eingeben können. G.

name = Tree, age = 85, label = Plant, location = Munich 

Vielen Dank!

Antwort

1

In Neo4j, benutzerdefinierte Prozeduren sind einfach .jar-Dateien, die Sie im $NEO4J_HOME/plugins Verzeichnis abgelegt werden. Logischerweise müssen Sie diese JAR-Datei generieren, um eine neue benutzerdefinierte Prozedur zu erstellen. Sie können es tun configuring a new maven project oder mit dem Repository Neo4j Procedure Template.

Benutzerdefinierte Prozeduren sind einfach Java-Klassen mit Methoden, die mit @Procedure kommentiert sind. Wenn die Prozedur in die Datenbank schreibt, sollte mode = WRITE definiert werden (nicht Ihr Fall).

Sie müssen auch die Datenbank abfragen, um den Knoten nach ID zu erhalten und die Eigenschaften zurückzugeben. Um dies zu tun, müssen Sie in Ihre Java-Klasse die GraphDatabaseService Klasse mit der @Context Annotation injizieren.

Ihr Ziel zu erreichen, glaube ich, dass Sie die getNodeById() Methode von GraphDatabaseService und die getProperties() in den zurück Node verwenden müssen.

Verwandte Themen