java - 具有多个实体的 Spring data jpa 不回滚 - PostgreSQL

标签 java spring postgresql transactions spring-data-jpa

我在我的一个项目中使用 spring-data-jpa。在服务层,我用@Transactional注释了一个私有(private)方法,并在应用程序中启用了@EnableTransactionManagement。当实体的某一保存方法抛出异常时,之前保存的其余实体不会回滚。顺便说一句,我正在使用 PostgreSQL。

如果我在这里遗漏了什么,请告诉我。

最佳答案

Spring 事务仅适用于 public 方法。因为它需要使用事务代理类注入(inject)代码。因此,公开您的方法将解决您的问题。查看 proxy mechanism of spring 的文档.

关于java - 具有多个实体的 Spring data jpa 不回滚 - PostgreSQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58230358/

相关文章:

java - 将 IP 地址存储在 UserDetails 实例中

java - 如何设置 Spring MVC 映射的优先级?

sql - upsert 函数中不存在错误的地方

oracle 到 postgres 迁移表类型问题

spring - 通过 HTTP 服务 PostgreSQL 大对象

mysql - 如何使用 mysql 管理许多相同的基于模式的数据库上的模式更改?

java - 关于 JMS receive()/MessageListener 优先级的问题

java - 当 Java 属性文件中有重复键时会发生什么?

java - jMockit对私有(private)类的访问

java - java中字符串中每个单词的第一个字符大写(但忽略特定单词)