Neo4j服务器的Spring声明式事务管理

时间:2019-10-03 07:54:51

标签: java spring spring-boot kotlin neo4j

我们正在使用Spring Boot 2,Kotlin和neo4j服务器作为数据存储的项目。我只是在玩Spring @Transactional注解。经过长时间的互联网研究,我发现Neo4j服务器(Rest API)不支持Spring事务,它仅支持嵌入式Neo4j。spring-boot-starter-data-neo4j用于配置neo4j

我的代码如下

class ServiceImpl{

   @Throws(Throwable::class)
   @Transactional(rollbackFor = [Exception::class])
   public void create() {
       // Code for saving entity
       throw Exception("Failed to save") // Throwing exception intentionally to check rollback
   }
}

即使抛出异常,保存的实体也不会回滚。如果在POSTGRES中选择了数据库,则相同的代码也可以正常工作。但是,如果将rest api用于neo4j,则它不适用于Neo4j服务器。互联网称仅支持嵌入式neo4j。还有其他有效处理交易的方式。我知道有Springs程序化交易管理,但这将是一个乏味的方法。

任何有关此的建议将有很大帮助。预先感谢

0 个答案:

没有答案