java - 使用 JPA (postgres) 在 Spring 应用程序中嵌套事务

标签 java spring postgresql jpa transactions

是否可以使用 postgres@Transactional() 中使用 PROPAGATION_NESTED?我得到:

org.springframework.transaction.NestedTransactionNotSupportedException:
JpaDialect does not support savepoints - check your JPA provider's capabilities

我试过:

@Bean
public PlatformTransactionManager transactionManager() {
    JpaTransactionManager transactionManager = new JpaTransactionManager();
    transactionManager.setEntityManagerFactory(entityManagerFactory()
                .getObject());
    transactionManager.setNestedTransactionAllowed(true);
    return transactionManager;
}

但没有成功。

最佳答案

我假设您正在使用 Hibernate。 Hibernate 不可能进行嵌套事务。

enter image description here

在下面的代码摘录中,spring 设置了 savePointManager。但是在 Hibernate 中没有实现 SavepointManager 的类。

关于java - 使用 JPA (postgres) 在 Spring 应用程序中嵌套事务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37927208/

相关文章:

java搜索-从字符串preparedstatement中获取整数值

json - Play + Anorm + Postgres - 将 json 值加载到案例类中

java - rmi.transport.tcp.tcptransport Connectionhandler 占用大量 CPU

java - 图像资源的合适尺寸是多少?

java - 将 Spinners 的文本发送到邮件

Spring Rest Controller 跟踪实体 View 计数

java - Spring - 如何获取属性文件的子集而不枚举所有必需的属性

java - 如何通过像这样为字符串添加前缀来防止劫持?

java - 处理多线程拆分器/聚合器编排内部的异常以转到聚合器而不是 MessagingGatewaySupport 的 errorChannel

mysql - 不同 SQL 平台中的 ALL 子句