【解决问题】Transaction was marked for rollback only; cannot commit

你的名字 2023-10-15 09:08 179阅读 0赞

问题现象:

导入文件的时候直接报错:

Transaction was marked for rollback only; cannot commit; nested exception is org.hibernate.TransactionException: Transaction was marked for rollback only; cannot commit

中文意思大概是:事务是进行回滚的,不能直接提交

原因分析:

1.代码截图如下:

2.代码分析:

事务是执行数据库插入等动作的时候,出现异常进行回滚的,也就是必须发生异常 ,捕捉到异常才行,仔细查看代码,try…catch 已经捕捉异常了,但是并没有进行异常抛出,那么事务注解就没有任何意义。

根据分析,去掉try…catch,重新测试,不在出现错误

3.原因

添加事务注解后,不能捕捉异常或者捕捉异常需要在抛出,不然事务注解没有意义

发表评论

表情:
评论列表 (有 0 条评论,179人围观)

还没有评论,来说两句吧...

相关阅读