hibernate - hibernate中的事务管理是什么?

标签 hibernate transactions

什么是 hibernate 中的事务管理?

在我的 hibernate 应用程序中存在一对多映射。

例如:Student 表与 Subjects 表映射。

当我添加一个 Student 对象时,Subjects 表也添加了一些条目。

Subjects 表插入中发生任何错误时,我想自动删除 Student 表条目。

可以通过事务管理吗?不然怎么可能?

最佳答案

您所描述的正是交易的用途。这个想法是将数据库操作分组到单个事务中,它们要么全部成功,要么全部失败。这样您的数据库就不会处于中间和无效状态。

事务管理是一个广阔且通常相当复杂的领域,配置它的方式取决于您的特定应用程序设置。

由于您只提到了 Hibernate,所以我建议您首先阅读 this文档的章节。如果您使用 Spring 来划分事务边界,我建议您阅读 this他们的文档部分。

值得注意的是,您无法在事务之外将 SQL 发送到数据库。围绕这个有讨论here .

关于hibernate - hibernate中的事务管理是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6439513/

相关文章:

java - 无法将名称 [org.hibernate.dialect.HSQDialect] 解析为策略 [org.hibernate.dialect.Dialect]

hibernate - @Autowired lateinit 属性 '' 尚未初始化

java - Hibernate 映射列表 - 索引

php - 根据 CSV 每 x 分钟用 PHP 更新整个表

java - 调用 query.list() 后 Hibernate session 关闭

python - Google Cloud Datastore - 是否可以为单个根实体使用事务?

hibernate - Grails:从其他服务方法调用服务方法时出现问题

java - 在 Hibernate 中映射一对多关系?

MySQL 限制相同 "user"值的最大行数

django - select_for_update 开发 Django