我正在努力如何转换此示例:https://spring.io/guides/gs/accessing-data-neo4j/以处理新版本的Spring Data。我显然将Person.java的导入更改为org.neo4j.ogm。*。我添加了:
@Bean
public SessionFactory getSessionFactory()
{
logger.info("ApplicationConfig::getSessionFactory()");
return new SessionFactory("hello");
}
@Bean
public Session getSession() throws Exception {
logger.info("Initialising Neo4jSession");
SessionFactory sessionFactory = getSessionFactory();
Assert.notNull(sessionFactory, "You must provide a SessionFactory instance in your Spring configuration classes");
return sessionFactory.openSession();
}
到Application.java文件。 但我不知道如何改变方法:
@Bean CommandLineRunner演示(PersonRepository personRepository, GraphDatabase graphDatabase)
上班。我已经尝试将此方法的代码移动到其类的构造函数,但我需要有PersonRepository。
答案 0 :(得分:4)
不应使用GraphDatabaseService来管理事务,如果您注入org.neo4j.ogm.session.Session
,则会使用
session.beginTransaction()
AFAIK,PersonRepository将按原样注入SDN 3。
以下是另外两篇介绍SDN 4.1的文章 -
http://graphaware.com/neo4j/2015/12/15/the-essence-of-spring-data-neo4j-4.html http://graphaware.com/neo4j/2016/02/24/upgrading-spring-data-neo4j-4-1.html