我正在使用Spring Data Neo4j 4并拥有以下用户实体
@NodeEntity
public class User{
private Long id;
private String username;
//Getter, Setter
}
使用Neo4j GraphRepository,我首先在一个事务中创建用户,然后在第二个事务中删除他。 使用localhost上的独立Neo4j服务器:7474我在运行“MATCH(n)return n”时没有结果但是当我使用我刚刚删除的用户的id运行GraphRepository的findOne(Long id)方法时,我得到了用户,我刚刚删除了返回。 我不明白是否涉及某种行为?
此致 Urr4
编辑: 我的申请类
@SpringBootApplication(scanBasePackages = {/.../})
@EnableNeo4jRepositories(basePackages = {/.../})
@EnableTransactionManagement
public class MyApplication extends Neo4jConfiguration {
public static void main(String[] args) {
SpringApplication.run(TSApplication.class, args);
}
@Override
@Bean
public Neo4jServer neo4jServer() {
return new RemoteServer(/.../);
}
@Override
@Bean
public SessionFactory getSessionFactory() {
return new SessionFactory("/.../);
}
}
答案 0 :(得分:0)
在迈克尔斯评论之后,我用谷歌搜索了一下,并将以下内容添加到我的控制器中:
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = RuntimeException.class)
之后它有效 - 谢谢大家:)