【发布时间】:2014-02-02 18:40:27
【问题描述】:
我遇到了 Neo4J 无法根据注入 Neo4J 数据库的类的范围静默保存节点的问题,因此我尝试将 Neo4j 数据库包装在以下类中:
import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;
import javax.ejb.Singleton;
import javax.inject.Named;
import org.neo4j.graphdb.Node;
import org.neo4j.graphdb.factory.GraphDatabaseFactory;
import org.neo4j.graphdb.index.Index;
import org.neo4j.graphdb.index.IndexManager;
@Named
@Singleton
public class GraphDatabaseMngr
{
private static final String FILESYSTEM_DB = "target/dmsdb";
private org.neo4j.graphdb.GraphDatabaseService graphDb;
/* below is for node indexing */
private IndexManager indexManager;
private Index<Node> index;
public GraphDatabaseMngr()
{
}
@PostConstruct
void postConstruct()
{
setUp();
}
@PreDestroy
void preDestroy()
{
getGraphDb().shutdown();
}
public void setUp()
{
if (getGraphDb() == null)
{
setGraphDb(new GraphDatabaseFactory().newEmbeddedDatabase(FILESYSTEM_DB));
setIndexManager(getGraphDb().index());
setIndex(getIndexManager().forNodes("indexNodes"));
}
}
}
我想知道是否可以,将其注入@SessionScoped 类中是否可以。
到目前为止,该类似乎已正确注入,但在 neo4j 存储中获取和添加节点并不能按预期工作,节点未出现存储但未返回错误。
【问题讨论】:
标签: jakarta-ee neo4j osgi