2012-02-24 5 views
0

1)Resteasyを使用して、特定のNeo4jグラフデータベースにアクセスできるRESTful Webサービスを提供しています。Resteasyの各リクエストの前にNeo4jに接続する方法は?

@Path("graph") 
public class GraphResource { 

    @GET 
    @Path("users/{id}") 
    @Produces(MediaType.APPLICATION_JSON) 
    public String getUserInfos(@PathParam("id") String id) { 
     // Search the database, get a string representation and return it 
    } 
} 

私はgetUserInfos方法でDBへのアクセスを取得したいと思います:RESTEasyので

は、このWebリソース(GraphResource.javaが)のように見えます。

Graph graph = new Neo4jGraph("/tmp/neo4j"); 

...しかし、最高の場所です私は知らない。私は(Gremlin付き)Graphオブジェクトをインスタンス化する必要があることを知っています。

PreProcessInterceptorは役に立ちますか?私はDB接続でどのような例も見たことがありません。

2)グラフオブジェクトは静的に定義する必要がありますか?すべてのリクエストの間にそれを共有する必要がありますか? 2つのリクエストをどのようにしてエンタングルさせないか?

答えて

0

私はJerseyを使用していますが、同じことをしています。neo4jをカバーしているRESTサービスを公開しています。私が行うことは、基本的にneo4j dbへのハンドルを取得するgetDb()メソッドを使ってシングルトンを作成することです。 dbは複数のスレッドで共有できます。同じデータベースを複数回インスタンス化するだけです。

関連する問題