hibernate中的事务管理是什么?
在我的hibernate应用程序中,存在一对多映射。
例如:Student
表与Subjects
表映射。
当我添加Student
对象时,Subjects
表也添加了一些条目。
当Subjects
表插入中出现任何错误时,我希望自动删除Student
表条目。
是否可以通过交易管理实现?否则怎么可能呢?
您所描述的正是事务的用途。这个想法是将数据库操作分组到一个事务中,要么全部成功,要么全部失败。这样,您的数据库就不会处于中间和无效状态。
事务管理是一个庞大且往往相当复杂的领域,配置它的方式取决于您的特定应用程序设置。
由于您只提到了Hibernate,我建议您从阅读文档的这一章开始。如果您正在使用Spring来划分事务边界,我建议您阅读他们文档的这一部分。
值得注意的是,不能在事务之外向数据库发送SQL。这里有关于这个的讨论。