JPA-在TransactionSystemException之后强制提交事务

时间:2018-08-02 11:45:15

标签: java spring hibernate spring-boot

我正在开发一个具有3个要部署的服务器的应用程序:dev,home prod。在数据库中,我们有其他数据库的一些视图。在开发中,我们可以控制数据库,我们可以创建视图并插入一些数据进行测试。在开发和生产中,我们不控制数据库。因此,尚未创建某些视图。

我喜欢这个

public class myDTO {
  Long id;
  Double quantity;
  Map<String, Double> loadTypes; // come from view
}

我在findAll类中有一个方法@Transactional,它从数据库中获取loadTypes,但是由于我的类是@Transactional,因此当我尝试访问表时遇到了错误500和myDTO未返回,即使我需要访问以获得loadTypes的视图时,我也想返回DTO的其余部分。有什么办法可以做到吗?

我收到此错误

org.springframework.transaction.TransactionSystemException: Could not commit JPA transaction; nested exception is javax.persistence.RollbackException: Transaction marked as rollbackOnly
    at org.springframework.orm.jpa.JpaTransactionManager.doCommit(JpaTransactionManager.java:526)

0 个答案:

没有答案