3

私はneo4jの使い方を学んでいますが、その使い方に少し混乱しています。ノードとリレーションシップを追加するときは、次のように実行できます。

GraphDatabaseService graphDb = new EmbeddedGraphDatabase("C:/temp/graphdb");
Transaction tx = graphDb.beginTx();
try {
  org.neo4j.graphdb.Node node = graphDb.createNode();
  ...

私もこのようにすることができます:

NeoService neoService = new EmbeddedNeo("C:/temp/graphdb");
Transaction tx = neoService.beginTx();
try {
  org.neo4j.api.core.Node node = neoService.createNode();
  ...

ここでの違いは本当に何ですか?どちらを使うべきですか?なぜそれらは2つの異なるメカニズムなのですか?これはここでのAPIの進化だけですか?:) MetaModel APIを使用したいのですが、NeoServiceが必要なので、そこにある選択は明らかだと思います。

4

3 に答える 3

5

申し訳ありませんが、最新の1.0-RC1では名前空間が移動されたため、最初のものを使用する必要があります。これは単なる命名であり、セマンティクスは同じです。2番目の例は古くなっているため、公式ドキュメントから削除する必要があります。どこで見つけましたか?

乾杯、

/ peter neubauer

于 2010-02-03T08:24:24.593 に答える
2

あなたはAPIの進化のコメントにスポットを当てています。古いAPIはNeoServiceであるため、使用しないでください。最初のスニペットを使用してください。APIの変更の詳細については、たとえば最新のrcのリリースメールを参照してください。

http://www.mail-archive.com/user@lists.neo4j.org/msg02378.html

メタモデルコンポーネントの最新のスナップショット(0.7-SNAPSHOT)を使用すると、最新のAPIを使用していることがわかります。1.0リリース(Real Soon Now :)では、新しいAPIを使用するすべてのコンポーネントの非SNAPSHOTリリースを作成します。

-EE

于 2010-02-03T08:29:56.267 に答える
2

また、メタモデルに関しては、メタモデルコンポーネントを使用してください(現在はmavenartifactId:neo4j-meta-modelを使用しています)。

また、コンポーネントの概要http://components.neo4j.org/neo4j-meta-model/に無効なサンプルコードと説明が含まれていることにも気付きました。私はそれを修正しようとします。

于 2010-02-03T08:54:30.780 に答える