Configuration Spring数据Neo4J数据库连接
我正试图通过以下链接()使用Spring数据连接到Neo4J数据库。但它似乎不起作用。它无法自行创建存储库实现。这就是为什么我会被炒鱿鱼。这里是我迄今为止所尝试的Configuration Spring数据Neo4J数据库连接,configuration,spring-data,spring-data-neo4j,spring-data-neo4j-4,neo4j-ogm,Configuration,Spring Data,Spring Data Neo4j,Spring Data Neo4j 4,Neo4j Ogm,我正试图通过以下链接()使用Spring数据连接到Neo4J数据库。但它似乎不起作用。它无法自行创建存储库实现。这就是为什么我会被炒鱿鱼。这里是我迄今为止所尝试的 PersistenceContext.java PersonRepository.java PersonController.java WebMvcConfig.java POM.xml org.springframework.data spring数据共享 1.13.1.释放 org.springframework.data sp
org.springframework.data
spring数据共享
1.13.1.释放
org.springframework.data
spring-data-neo4j
4.2.1.1发布
org.springframework
弹簧网
4.3.7.1发布
org.springframework
SpringWebMVC
4.3.7.1发布
javax.servlet
javax.servlet-api
3.1.0
编译
org.neo4j
neo4j ogm嵌入式驱动程序
2.1.2
org.neo4j
neo4j ogm核
2.1.1
org.neo4j
neo4j ogm http驱动程序
2.1.1
org.neo4j
neo4j核
3.1.3
org.neo4j.app
neo4j服务器
3.1.3
我遇到以下异常情况
原因:org.springframework.beans.BeanInstantiationException:
未能实例化[org.neo4j.ogm.session.SessionFactory]:工厂
方法“getSessionFactory”引发异常;嵌套异常是
org.neo4j.ogm.exception.ServiceNotFoundException:无法加载
驱动程序:空
任何帮助都是好的 您没有说明您使用的是哪个版本,但是如果您使用的是4.2.1,那么快速启动似乎缺少事务管理器定义: 将以下内容添加到PersistenceContext类:
@Bean
public Neo4jTransactionManager transactionManager() {
return new Neo4jTransactionManager(sessionFactory());
}
有关更多详细信息,请参阅spring-data-neo4j文档
我使用的是4.2.1,但4.2.1版本没有org.springframework.data.neo4j.config.Neo4jConfiguration类。所以我把版本改成了4.1.8。您给出的解决方案给了我一个错误,即“构造函数Neo4jTransactionManager(SessionFactory)未定义”。可能是因为4.1.8。是的,对于4.2.1,只需删除
扩展Neo4jConfiguration
@frant.harth,我已更新了问题,但有例外和pom.xml。我收到“无法加载驱动程序:null。”错误。@KSHiTiJ驱动程序配置是什么样子?@frant.harth我更新PersistenceContext.java。请查收。
@Repository
public interface PersonRepository extends GraphRepository<Person> {
}
@Service
public class PersonService {
@Autowired
private PersonRepository personRepository;
public Person save(Person person) {
return personRepository.save(person);
}
}
@RestController
@RequestMapping("/person/**")
public class PersonController {
@Autowired
private PersonService personService;
@RequestMapping("/save")
public ResponseObject save(@RequestBody Person person)
{
try {
personService.save(person);
return ResponseObjectCreator.createResponseObj(ResponseStatus.SUCSESS);
}
catch (Exception e) {
e.printStackTrace();
}
return ResponseObjectCreator.createResponseObj(ResponseStatus.FAILURE);
}
}
@Configuration
@EnableWebMvc
@ComponentScan(basePackages = {"com.ksh.neo4j.controllers", "com.ksh.neo4j"})
public class WebMvcConfig extends WebMvcConfigurerAdapter {]
@Override
public void configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer) {
configurer.enable();
}
}
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-commons</artifactId>
<version>1.13.1.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-neo4j</artifactId>
<version>4.2.1.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>4.3.7.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>4.3.7.RELEASE</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.neo4j</groupId>
<artifactId>neo4j-ogm-embedded-driver</artifactId>
<version>2.1.2</version>
</dependency>
<dependency>
<groupId>org.neo4j</groupId>
<artifactId>neo4j-ogm-core</artifactId>
<version>2.1.1</version>
</dependency>
<dependency>
<groupId>org.neo4j</groupId>
<artifactId>neo4j-ogm-http-driver</artifactId>
<version>2.1.1</version>
</dependency>
<dependency>
<groupId>org.neo4j</groupId>
<artifactId>neo4j-kernel</artifactId>
<version>3.1.3</version>
</dependency>
<dependency>
<groupId>org.neo4j.app</groupId>
<artifactId>neo4j-server</artifactId>
<version>3.1.3</version>
</dependency>
@Bean
public Neo4jTransactionManager transactionManager() {
return new Neo4jTransactionManager(sessionFactory());
}