java - 在单个 Hibernate session 中使用多个事务

标签 java mysql hibernate web-applications transactions

我有一个带有 MySQL DB 和 Hibernate 的 Web 应用程序。 我打开了一个 hibernate session ,

开始交易

做一些工作

提交交易

再一次

开始交易

做一些工作

提交交易

但我以以下异常结束

线程“main”中的异常 org.hibernate.TransactionException:事务未成功启动 事务未成功启动。

请指导我解决这个具体问题。如何在 session 中使用多个事务。

最佳答案

我认为您没有开始交易。那就是你得到那个异常(exception)的时候。您已打开一个 session ,但在开始事务之前,您正在提交它。打开 session 后尝试开始它。

// create session
try {    
    tx = session.beginTransaction();
    // do something
    tx.commit();
} catch (Exception exp) {
    tx.rollback();

}

try {    
    tx = session.beginTransaction();
    // do something
    tx.commit();
} catch (Exception exp) {
    tx.rollback();

}
// close session

关于java - 在单个 Hibernate session 中使用多个事务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24772126/

相关文章:

java - 构建步骤 'Execute Windows batch command' 将构建标记为失败已完成 : FAILURE

java - 为什么我的 .jar 文件运行速度比 eclipse 中的程序慢?

mysql - MariaDB集群,如何确保节点同步并具有相同的结构和数据

java - 是否有真实世界的 Spring 和 Hibernate 示例的来源?

java - 如何以特定格式显示txt文件中的数据

java - 如何通过对象初始化数组?

php - 使用 PHP 从 MySQL 添加日期变量

mysql - Rails无法用mysql生成模型

java - Spring 和 hibernate : form for object containing objects

mysql - 加速 Hibernate 对象的创建?