[英]spring data neo4j use existing database
我正在使用Spring Data Neo4j,已经在Spring中创建了一个应用程序。 我可以借助JUnit测试用例来运行我的应用程序。 但是每次我运行测试用例时,它都会在使用<neo4j:config storeDirectory="target/neo4j-db"/>
指定的目录路径中创建一个新数据库。 这将在Eclipse中我的工作空间所在的位置创建db。
我已经在我的ubuntu中安装了Neo4j debian软件包,默认情况下,该软件包在/var/lib/neo4j/data/graph.db
具有数据库。 我希望我的应用程序使用此数据库,而不是在target/neo4j-db
中创建一个target/neo4j-db
。 我试图用/var/lib/neo4j/data/graph.db
替换target/neo4j-db
,并获得了读写数据库的权限。 但这行不通。
这种配置有什么问题? 我有什么想念的吗?
要针对Neo4j DB运行JUnit测试,您有3种选择
@Rollback(false)
。 之所以必须这样做,是因为SpringJUnit4ClassRunner.class将在测试期间回滚对数据库所做的所有更改。 使用REST方法(对SpringJUnit4ClassRunner.class再次使用带有@Rollback(false)
的技巧)。 为了使此方法与本地方法相反,您必须在运行测试之前启动Neo4j服务器。 您还必须像这样配置xml文件:
<neo4j:config graphDatabaseService="graphDatabaseService"/> <bean id="graphDatabaseService" class="org.springframework.data.neo4j.rest.SpringRestGraphDatabase"> <constructor-arg value="http://localhost:7474/db/data/" index="0" /> </bean>
<neo4j:config graphDatabaseService="graphDatabaseService"/> <bean id="graphDatabaseService" class="org.neo4j.test.ImpermanentGraphDatabase" destroy-method="shutdown"/>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.