java - 休眠模型数据未保存在数据库中
问题描述
我有 5 个表数据需要同时保存到数据库中。我的代码片段如下。
public boolean addStudentDetail(RegisterLoginDetail registerLoginDetail,
StudentRegisterBasicDetail studentRegisterBasicDetail, StudentBoardDetail studentBoardDetail,
StudentSchoolDetail studentSchoolDetail, StudentAdditionalDetail studentAdditionalDetail,
StepCompletionMatrix stepCompletionMatrix) {
boolean isSuceess = true;
Session session = sessionFactory.openSession();
Transaction transaction = null;
try {
transaction = session.beginTransaction();
session.saveOrUpdate(registerLoginDetail);
session.saveOrUpdate(studentRegisterBasicDetail);
session.saveOrUpdate(studentBoardDetail);
session.saveOrUpdate(studentSchoolDetail);
session.saveOrUpdate(studentAdditionalDetail);
session.saveOrUpdate(stepCompletionMatrix);
transaction.commit();
} catch (HibernateException e) {
e.printStackTrace();
session.getTransaction().rollback();
isSuceess = false;
} finally {
if (session != null && session.isOpen()) {
session.close();
}
}
return isSuceess;
}
但是对于我在 StudentRegisterBasicDetail 表中找不到插入操作的两个事务数据条目,并且所有其他表包含每个表之间共享的一个公共 ID 的条目。我的 Web 应用程序处于试点测试模式,并发用户正在通过表单进行输入。所以我不是能够弄清楚我的条目在该表中被跳过的原因是什么。该表条目没有异常日志,如果发生异常,则是否应该发生所有表的回滚?
请帮我...
解决方案
推荐阅读
- node.js - Flutter:为用户订阅一个集合中的不同主题以获取推送通知 fcm
- javascript - 仅打印最后一个元素时,打印数组显示不同的值 - javascript
- r - 如何在地图中使用选择来获取数据框列表
- scala - Scala未使用的表达式错误与if语句
- c++ - 删除 boost 归档对象也会删除与之关联的流?
- git - 硬重置后推送git分支
- python - 在 Python 中将定义的函数转换为 lambda 函数
- cqrs - 在 CQRS 中设计查询层
- laravel - 精确搜索模型?
- angular - 在应用程序加载时更新 @ViewChild 组件的正确方法是什么