1) Я использую Resteasy, чтобы предоставить веб-службу RESTful, которая дает доступ к определенной базе данных графиков Neo4j.Как подключиться к Neo4j перед каждым запросом на Resteasy?
С Resteasy, этот веб-ресурс (GraphResource.java) выглядит следующим образом:
@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. Я знаю, что я должен создать экземпляр объекта Graph (с Gremlin):
Graph graph = new Neo4jGraph("/tmp/neo4j");
... но я не знаю, где это самое лучшее место.
Считаете ли вы, что PreProcessInterceptor может пригодиться? Я никогда не видел в нем примера с подключением к БД.
2) Должен ли объект Graph быть статически определен? Должна ли быть разделена между всеми запросами? Как сделать два запроса не запутаться?