8

すべてのノードで複数のプロパティ値の組み合わせが一意であることを確認する必要があります。Neo4Jでそれを行う方法。

http://docs.neo4j.org/chunked/milestone/transactions-unique-nodes.htmlで入手可能な Neo4J ドキュメントから、1 つのプロパティの一意性を確保することができます。しかし、2つ以上の組み合わせはどうでしょうか。

4

1 に答える 1

4

あなたは試すことができます

  public Node getOrCreateUserWithUniqueFactory(final String firstName, final String lastname, GraphDatabaseService graphDb) {
    UniqueFactory<Node> factory = new UniqueFactory.UniqueNodeFactory(graphDb, "users") {
      @Override
      protected void initialize(Node created, Map<String, Object> properties) {
        created.setProperty("id", properties.get("id"));

        created.setProperty("firstName", firstName);
        created.setProperty("lastName", lastname);
      }
    };

    return factory.getOrCreate("id", firstName + "_" + lastname);
  }
于 2013-02-06T10:42:02.690 に答える