我需要在不同端口上的同一台机器上运行多个neo4j嵌入式数据库。
我正在构建Spring - 如何通过Spring配置最佳方法?理想情况下,我希望每个应用程序都有单独的属性文件,而不是在代码中烘焙端口 - 例如/etc/app1.conf,/etc/app2.conf,并且能够指定这些文件中的相关端口和其他属性。
据我所知,早期版本的neo4j中的这种配置曾经可以通过EmbeddedServerConfigurator类实现,而这种类在1.8 +中不再存在
我在不久的将来以2.0.5的速度运行,因此非常赞赏这种非弃用的方式。
d
答案 0 :(得分:1)
Darrell,如果你运行嵌入式,那么没有端口,也没有配置文件。
您只需将商店目录和可选的数据库配置提供给作为spring beans创建的GraphDatabaseService
实例(在Spring Data Neo4j中)。
不幸的是,1.9和2.0之间没有兼容的方式,因为EmbeddedGraphDatabase
的公共构造函数在2.0中删除了,我在SDN 3.0 / Neo4j 2.0中添加了GraphDatabaseServiceFactoryBean
。
要运行具有嵌入式Neo4j的服务器,您可能不得不采用扩展CommunityBootstrapper
的方式。但是现在没有开箱即用的方法将它整合到Spring中。
为了使其工作,我可能会创建一个CommunityBootstrapper
的子类来启动服务器,但可以从外部传递到GraphDatabaseService
。
请参阅我的内存服务器项目以获取一些提示:https://github.com/jexp/neo4j-in-memory-server