如何解决如果使用Hibernate读取csv文件记录时遇到任何错误,如何回滚所有已提交的事务
我有一个CSV文件,其中包含约10Mb的数据,可用于填充整个数据库。假设如果从CSV文件读取记录时遇到错误,我需要中止所有已提交的事务吗?
在我的项目中,我有一个阈值,例如如果5%的CSV记录出错,我将中止与该CSV文件关联的所有已提交的事务,否则,如果小于5%,我将只取出该记录并保存在单独的文件。
pl让我知道如何在休眠状态下中止所有已提交的事务(涉及15个以上的DAO类)。
感谢您的建议。
解决方法
一旦事务提交,就不能撤消。不在Hibernate中,不在任何数据库中!
要使操作可逆,您需要将它们保持在同一尚未提交事务中,并且如果发生任何(默认情况下为运行时)异常,它将自动回滚并撤消所有更改。 / p>
您将问题标记为Spring,在Spring中,您可以在方法上使用@Transactional批注,并且在进行任何事务(包括从该方法调用的其他方法)的情况下,该方法中的所有更改都将被撤消。
更多此处https://www.baeldung.com/transaction-configuration-with-jpa-and-spring
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。