I dette kapittelet skal vi utvikle og teste en Java Application hjelp Neo4j Native Java API. Vi vil diskutere om Neo4j Cypher Java API i neste kapittel. 
 
 Før utvikle programmet, kan du se "Neo4j Java Environment Setup" kapittel til setup Eclipse IDE for å utvikle dette programmet 
 
 Neo4j Native Java API Eksempel 
 
  Dette eksemplet viser hvordan du kan utvikle en Java-applikasjon i Eclipse IDE for å utvikle og teste Neo4j Native Java API Eksempel 
 
 Følg alle trinnene som er nevnt i "Neo4j Java Environment Setup "kapittel 
 
  Trinn 1 Anmeldelser - Lag en Java-programmet i samme Java-prosjektet 
 
 Nå begynner du å skrive Neo4j Java API koding for å utføre Neo4j DB operasjoner 
 
  Trinn 2 
 - Lag en Neo4j Database 
 GraphDatabaseFactory dbFactory = new GraphDatabaseFactory (); GraphDatabaseService db = dbFactory.newEmbeddedDatabase ("C: /TPNeo4jDB"); 
 Det skaper en Schema /Database for oss på den angitte banen som vist below.This ligner "CREATE DATABASE" kommando av Oracle SQL 
 
  Trinn 3 
 -. Begynn Neo4j Database transaksjonen til å begå våre endringer 
 prøve (Transaksjons tx = graphDb.beginTx ()) {//Utfør DB operasjoner tx.success ();} 
 Så for vår Java Program kildekode ser ut 
 pakken com.tp.neo4j.java.examples, import org. neo4j.graphdb.GraphDatabaseService, import org.neo4j.graphdb.Transaction, import org.neo4j.graphdb.factory.GraphDatabaseFactory; public class Neo4jJavaAPIDBOperation {public static void main (String [] args) {GraphDatabaseFactory dbFactory = new GraphDatabaseFactory (); GraphDatabaseService db = dbFactory.newEmbeddedDatabase ("C: /TPNeo4jDB"); prøv (Transaksjons tx = db.beginTx ()) {//Utfør DB operasjoner tx.success (); }}} 
  Trinn 4 Anmeldelser - For å opprette noder, trenger vi label navn. Opprett en Enum ved å implementere Neo4j Java API "Label" grensesnitt 
 pakken com.tp.ne4oj.java.examples;. Import org.neo4j.graphdb.Label; offentlig enum Guider implementerer Etikett {JAVA, Scala, SQL, NEO4J; } 
  Trinn 5 Anmeldelser - Lag Knuter og angi egenskaper til dem 
 
 Lag to noder 
 Node javaNode = db.createNode (Tutorials.JAVA); Node scalaNode = db.createNode (Tutorials.SCALA); 
 Angi egenskaper til dem 
 javaNode.setProperty ("TutorialID", "JAVA001"); javaNode.setProperty ("tittel", "Lær Java"); javaNode.setProperty ("NoOfChapters" "25"); javaNode.setProperty ("Status", "Fullført"); scalaNode.setProperty ("TutorialID", "SCALA001"); scalaNode.setProperty ("Tittel", "Lær Scala"); scalaNode.setProperty ("NoOfChapters", "20"); scalaNode.setProperty ("Status", "Fullført "); 
  Trinn 6 Anmeldelser - Å skape relasjoner, trenger vi relasjonstyper. Så lage en enum ved å implementere Neo4j "RelationshipType" 
 pakken com.tp.neo4j.java.examples;. Import org.neo4j.graphdb.RelationshipType; offentlige enum TutorialRelationships implementerer RelationshipType {JVM_LANGIAGES, NON_JVM_LANGIAGES;} 
  Trinn 7 Anmeldelser - Lag Forholdet mellom noder og angi egenskaper til det 
 
 Lag et forhold fra Java Node til Scala Node 
 Sivil forhold = javaNode.createRelationshipTo (scalaNode, TutorialRelationships.JVM_LANGIAGES); < p> Angi egenskaper til dette relationship
relationship.setProperty("Id","1234");relationship.setProperty("OOPS","YES");relationship.setProperty("FP","YES");
Step 8 
 - Slutt kildekode 
 pakken com.tp.neo4j.java.examples, import org.neo4j.graphdb.GraphDatabaseService, import org.neo4j.graphdb.Node, import org.neo4j.graphdb.Relationship;. import org.neo4j.graphdb.Transaction, import org.neo4j.graphdb.factory.GraphDatabaseFactory; public class Neo4jJavaAPIDBOperation {public static void main (String [] args) {GraphDatabaseFactory dbFactory = new GraphDatabaseFactory (); GraphDatabaseService db = dbFactory.newEmbeddedDatabase ("C: /TPNeo4jDB"); prøve (Transaksjons tx = db.beginTx ()) {Node javaNode = db.createNode (Tutorials.JAVA); javaNode.setProperty ("TutorialID", "JAVA001"); javaNode.setProperty ("Tittel", "Lær Java"); javaNode.setProperty ("NoOfChapters", "25"); javaNode.setProperty ("Status", "Fullført"); Node scalaNode = db.createNode (Tutorials.SCALA); scalaNode.setProperty ("TutorialID", "SCALA001"); scalaNode.setProperty ("Tittel", "Lær Scala"); scalaNode.setProperty ("NoOfChapters", "20"); scalaNode.setProperty ("Status", "Fullført"); Forholdet forholdet = javaNode.createRelationshipTo (scalaNode, TutorialRelationships.JVM_LANGIAGES); relationship.setProperty ("Id", "1234"); relationship.setProperty ("OOPS", "JA"); relationship.setProperty ("FP", "JA"); tx.success (); } System.out.println ("Ferdig med hell");}} 
  Trinn 9 Anmeldelser - Før du utfører denne Java Program, sjekk din Neo4j er i avslutningsmodus eller ikke. Hvis ikke, klikker du på "Stop" knappen til showdown det 
 
  Trinn 10 Anmeldelser -.. Execute Java Program og observere produksjonen i Eclipse IDE Console 
 
 Velg vår Neo4j Database mappen og klikk på "Start" -knappen 
 
 Når Dette DB er startet vellykket, tilgang Neo4j Browser ved å klikke på "http: //localhost: 7474". linken for å observere våre data 
 
  Trinn 11 Anmeldelser - Type kommandoen nedenfor på $ teksten av Neo4j dataleseren 
 MATCH (a) - [r: JVM_LANGIAGES] -> (b) RETURN r 
 Klikk på "Java" Node å vise det er egenskaper 
 
 Klikk på "Scala" Node å vise det er egenskaper 
 
 Klikk på Sivil å se det er egenskaper 
 
  NB - 
 
 Hvis vår Neo4j Server er oppe og går ved å henvise vår nyopprettede databasen, så kan vi ikke kjøre programmet så serveren er allerede fått lås for denne databasen. 
 
 Så når vi utfører vår forrige program, vil vi få noen feil stack trace 
 
  java.io.IOException: Kunne ikke låse låsefil C:. \\ TPNeo4jDB \\ lock fordi en annen prosess har allerede låsen 
 
 For å unngå dette problemet, må du først stoppe vår server, og deretter kjøre programmet. 
 
 På grunn av standard Neo4j DB Server godtar bare en lås på en gang. I Realtime søknadene vil Ne04J DBA folk oppdaterer DB egenskaper for å tillate noen antall låser på en gang. 
 

