如何在每次请求Resteasy之前连接到Neo4j?
1) 我使用它来提供一个RESTful Web服务,它提供对特定图形数据库的访问 使用Resteasy,此Web资源(GraphResource.java)如下所示:如何在每次请求Resteasy之前连接到Neo4j?,rest,resteasy,neo4j,graph-databases,gremlin,Rest,Resteasy,Neo4j,Graph Databases,Gremlin,1) 我使用它来提供一个RESTful Web服务,它提供对特定图形数据库的访问 使用Resteasy,此Web资源(GraphResource.java)如下所示: @Path("graph") public class GraphResource { @GET @Path("users/{id}") @Produces(MediaType.APPLICATION_JSON) public String getUserInfos(@PathParam("id"
@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。我知道我必须实例化一个图形对象(使用):
。。。但我不知道哪里是最好的地方
你认为这有用吗?我从来没有见过任何DB连接的例子
2) 图形对象是否必须静态定义?它是否应该在所有请求之间共享?如何使两个请求不纠缠在一起?我正在使用Jersey,但我们正在做同样的事情-公开一个使用neo4j的REST服务。我要做的是使用getDb()方法创建一个singleton,该方法基本上获得neo4j db的句柄。数据库可以由多个线程共享-您只需要确保多次实例化同一个数据库
Graph graph = new Neo4jGraph("/tmp/neo4j");