私はneo4jを初めて使用し、現在Neo4jRestNetクライアントを使用しています。学習目的で小さなネットワークを作成しました。
private static void GenerateNetwork()
{
var rootNode = Node.GetRootNode();
// Create a User Node with Properties
var prop = new Properties();
prop.SetProperty(NodeProperty.Name.ToString(), "Madeline J. Parnell");
prop.SetProperty(NodeProperty.Age.ToString(), "25");
prop.SetProperty(NodeProperty.LivesIn.ToString(), "LA");
var nodeUserWithName1 = Node.CreateNode(NodeType.Person.ToString(), prop);
prop = new Properties();
prop.SetProperty(NodeProperty.Name.ToString(), "Jack S. Waldrop");
prop.SetProperty(NodeProperty.Age.ToString(), "28");
prop.SetProperty(NodeProperty.LivesIn.ToString(), "San Francisco");
var nodeUserWithName2 = Node.CreateNode(NodeType.Person.ToString(), prop);
prop = new Properties();
prop.SetProperty(NodeProperty.Name.ToString(), "Willis O. Hicks");
prop.SetProperty(NodeProperty.Age.ToString(), "33");
prop.SetProperty(NodeProperty.LivesIn.ToString(), "Ann Arbor");
var nodeUserWithName3 = Node.CreateNode(NodeType.Person.ToString(), prop);
prop = new Properties();
prop.SetProperty(NodeProperty.Name.ToString(), "Leroy P. Wagner");
prop.SetProperty(NodeProperty.Age.ToString(), "40");
prop.SetProperty(NodeProperty.LivesIn.ToString(), "Hattiesburg");
var nodeUserWithName4 = Node.CreateNode(NodeType.Person.ToString(), prop);
prop = new Properties();
prop.SetProperty(NodeProperty.Name.ToString(), "Nancy J. Rose");
prop.SetProperty(NodeProperty.Age.ToString(), "25");
prop.SetProperty(NodeProperty.LivesIn.ToString(), "Cornish");
var nodeUserWithName5 = Node.CreateNode(NodeType.Person.ToString(), prop);
prop = new Properties();
prop.SetProperty(NodeProperty.Name.ToString(), "Sally G. Gee");
prop.SetProperty(NodeProperty.Age.ToString(), "48");
prop.SetProperty(NodeProperty.LivesIn.ToString(), "Charlestown");
var nodeUserWithName6 = Node.CreateNode(NodeType.Person.ToString(), prop);
prop = new Properties();
prop.SetProperty(NodeProperty.Name.ToString(), "Blanche T. Perez");
prop.SetProperty(NodeProperty.Age.ToString(), "35");
prop.SetProperty(NodeProperty.LivesIn.ToString(), "Philadelphia");
var nodeUserWithName7 = Node.CreateNode(NodeType.Person.ToString(), prop);
prop = new Properties();
prop.SetProperty(NodeProperty.Name.ToString(), "Robert S. Johnston");
prop.SetProperty(NodeProperty.Age.ToString(), "22");
prop.SetProperty(NodeProperty.LivesIn.ToString(), "Lancaster");
var nodeUserWithName8 = Node.CreateNode(NodeType.Person.ToString(), prop);
// Create Relationships to Nodes
rootNode.CreateRelationshipTo(nodeUserWithName1, RelationshipType.Knows.ToString());
rootNode.CreateRelationshipTo(nodeUserWithName2, RelationshipType.Knows.ToString());
rootNode.CreateRelationshipTo(nodeUserWithName3, RelationshipType.Knows.ToString());
rootNode.CreateRelationshipTo(nodeUserWithName4, RelationshipType.Knows.ToString());
rootNode.CreateRelationshipTo(nodeUserWithName5, RelationshipType.Knows.ToString());
rootNode.CreateRelationshipTo(nodeUserWithName6, RelationshipType.Knows.ToString());
rootNode.CreateRelationshipTo(nodeUserWithName7, RelationshipType.Knows.ToString());
rootNode.CreateRelationshipTo(nodeUserWithName8, RelationshipType.Knows.ToString());
// Create Relationship with Properties
//var relProp = new Properties();
//relProp.SetProperty(RelationshipProperty.Name.ToString(), "MyRelationship");
//relProp.SetProperty("CustomRelProp", "CustomPropValue");
nodeUserWithName1.CreateRelationshipTo(nodeUserWithName2, RelationshipType.Knows.ToString());
nodeUserWithName1.CreateRelationshipTo(nodeUserWithName3, RelationshipType.Knows.ToString());
nodeUserWithName2.CreateRelationshipTo(nodeUserWithName3, RelationshipType.Knows.ToString());
nodeUserWithName5.CreateRelationshipTo(nodeUserWithName6, RelationshipType.Knows.ToString());
nodeUserWithName6.CreateRelationshipTo(nodeUserWithName8, RelationshipType.Knows.ToString());
nodeUserWithName7.CreateRelationshipTo(nodeUserWithName1, RelationshipType.Knows.ToString());
nodeUserWithName7.CreateRelationshipTo(nodeUserWithName1, RelationshipType.Knows.ToString());
nodeUserWithName7.CreateRelationshipTo(nodeUserWithName3, RelationshipType.Knows.ToString());
nodeUserWithName7.CreateRelationshipTo(nodeUserWithName4, RelationshipType.Knows.ToString());
nodeUserWithName7.CreateRelationshipTo(nodeUserWithName5, RelationshipType.Knows.ToString());
nodeUserWithName7.CreateRelationshipTo(nodeUserWithName6, RelationshipType.Knows.ToString());
nodeUserWithName7.CreateRelationshipTo(nodeUserWithName8, RelationshipType.Knows.ToString());
}
インデックスを作成するメソッドを見つけようとしましたが、これは次の Java メソッドと同等です。
IndexManager index = graphDb.index(); Index people = index.forNodes( "people" ); RelationshipIndex roles = index.forRelationships( "roles" );
次のメソッドを使用して Java で行われる GenerateNetwork() メソッドで作成された人にそれを追加します。
people.add( nodeInstance, "valueName", reeves.getProperty( "valueName" ) );
とにかく、これまでのところ、Neo4jRestClient を使用してインデックスを処理する方法が見つかりませんでした。既存のインデックスを確認し、Neo4jRestClient を使用してノードをインデックスに割り当てる方法を知っている人はいますか?
誰かが例を共有してくれたら、とても感謝しています。