我们正在使用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程序化交易管理,但这将是一个乏味的方法。
任何有关此的建议将有很大帮助。预先感谢