7

サーバーモードでneo4jを実行して、REST APIを使用してアクセスできる場合、EmbeddedGraphDatabaseクラスを使用して同じneo4jインスタンスにアクセスできますか?

EmbeddedGraphDatabaseを使用するJavaアプリがロジックを駆動している本番環境のセットアップを考えていますが、他のクライアントが読み取り専用モードのRESTを使用してデータをナビゲートする場合があります。

4

1 に答える 1

7

あなたが説明しているのは、サーバープラグインまたは拡張機能です。そうすれば、REST API を介してデータベースを公開できますが、同時に、カスタム プラグイン/拡張コードから高パフォーマンスの埋め込みグラフ データベースにアクセスできます。

カスタム コードでは、操作対象の GraphDatabaseService を挿入できます。

カスタム拡張機能を jar として neo4j サーバーにデプロイし、クライアント コードをドメイン指向の RESTful API で動作させます。

// extension sample
@Path( "/helloworld" )
public class HelloWorldResource {

private final GraphDatabaseService database;

public HelloWorldResource( @Context GraphDatabaseService database) {
  this.database = database;
}

@GET
@Produces( MediaType.TEXT_PLAIN )
@Path( "/{nodeId}" )
public Response hello( @PathParam( "nodeId" ) long nodeId ) {
    // Do stuff with the database
    return Response.status( Status.OK ).entity(
            ( "Hello World, nodeId=" + nodeId).getBytes() ).build();
}
}

プラグイン拡張機能を作成するためのドキュメント。

于 2011-05-09T02:16:30.827 に答える