Spring boot 嵌入式neo4j,带弹簧护套
我正在尝试使用Spring boot 嵌入式neo4j,带弹簧护套,spring-boot,neo4j,spring-data-neo4j,neo4j-ogm,Spring Boot,Neo4j,Spring Data Neo4j,Neo4j Ogm,我正在尝试使用spring boot配置embedded neo4j。但在使用不同版本的软件包时遇到了很多麻烦,我想到了这个 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-neo4j</artifactId> <vers
spring boot
配置embedded neo4j
。但在使用不同版本的软件包时遇到了很多麻烦,我想到了这个
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-neo4j</artifactId>
<version>1.5.8.RELEASE</version>
</dependency>
<dependency>
<groupId>org.neo4j</groupId>
<artifactId>neo4j-ogm-embedded-driver</artifactId>
<version>2.1.6</version>
<scope>compile</scope> <!--compatible with spring-boot-starter-data-neo4j 1.5.8.RELEASE-->
</dependency>
<dependency>
<groupId>org.neo4j</groupId>
<artifactId>neo4j</artifactId>
<version>3.1.0</version>
<scope>runtime</scope>
</dependency>
通过在控制器中调用load()
方法,我得到了拒绝的连接
Caused by: org.apache.http.conn.HttpHostConnectException: Connect to localhost:7474 [localhost/127.0.0.1] failed: Connection refused (Connection refused)
我认为嵌入式neo4j没有启动,这就是原因。那么如何启动嵌入式服务器呢。我想如果我使用spring boot,它会自动启动,但事实并非如此
注意:文件school.cql
包含cypher查询
这就是我遵循的项目
我已经将注释添加到我的主类@EntityScan(“com”)
多谢各位
更新
这是spring应用程序的配置注释
@ComponentScan(basePackages={"com"})
@Configuration
@EnableJpaRepositories("com.repository")
@EntityScan(basePackages = {"com.domain", "org.springframework.data.jpa.convert.threeten"})
@EnableConfigurationProperties
@EnableAutoConfiguration
@EnableScheduling
@SpringBootApplication(exclude = org.activiti.spring.boot.SecurityAutoConfiguration.class)
@EnableNeo4jRepositories("com.graph.repository")
public class Application extends SpringBootServletInitializer {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
正如我所说,我遵循了本教程,唯一不同的是我为包含存储库/域实体的图形创建了两个maven
模块,而不是一个/服务与neo4j
相关。另一个模块与spring boot
和rest controller
相关,因此我发现了问题
Spring boot未检测到neo4j依赖项
<dependency>
<groupId>org.neo4j</groupId>
<artifactId>neo4j</artifactId>
<version>3.1.0</version>
<scope>runtime</scope>
</dependency>
org.neo4j
neo4j
3.1.0
运行时
如果它与spring boot maven插件不在同一个pom.xml
换句话说,传递依赖不起作用 您能在某处提供一个示例,或者至少发布您的配置吗?您的应用程序连接到RESTAPI而不是嵌入式实例。您好,我应该发布什么配置?您所说的“您的应用程序连接到RESTAPI而不是嵌入式实例”是什么意思?我指的是Neo4JURL的值。查看您得到的异常SDN/Neo4j OGM查找通过HTTP可用的实例。我使用嵌入式Neo4j,因此通常不必指定url。它将运行它并自行检测url。例如,在我指定的github链接中,他们没有指定url。但我不确定我的想法是否正确。为了回答您的问题,我没有指定URL的配置,我应该指定配置bean吗,因为我使用的是旧版本
<dependency>
<groupId>org.neo4j</groupId>
<artifactId>neo4j</artifactId>
<version>3.1.0</version>
<scope>runtime</scope>
</dependency>