采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
@Transactional,不知道差在哪里了,也是继承的RuntimeException,数据库也是mysql的用引擎也是InnoDB找不到原因,而且还报错,是什么原因呢
同学好,@Transactional只会针对数据库,只会回滚数据库的操作,不会回滚文件的操作。此外,同学报的这个错误是因为generateThumbnail方法里面的读取水印的地方,使用了basePath,basePath由于每个同学的环境不通有可能获取到不正确的路径地址,导致获取不到watermark.jpg。所以建议和后续2.0一样,替换掉basePath,改成水印图片的绝对值路径即可
.watermark(Positions.BOTTOM_RIGHT, ImageIO.read(new File(basePath + "/watermark.jpg")), 0.25f)
是的,老师,节我没完全听完就问你了,但是我现在遇到一个情况与你不符合,我没把水印图片放在src/test/resoures的文件里,就会报错,也是就没有找到水印图片,但是后面数据库写入成功了,我看你的视频是图片没有找到后数据没有写入,回滚了,这是你的截图这块报错了,然后进到catch块了,抛的IOException,然后数据库插入了也修改了,生成的文件夹没有图片
同学好,这是因为@Transaction默认只对RuntimeException起作用,你可以设置为对Exception起作用,@Transactional(rollbackFor=Exception.class)
好的,谢谢老师的耐心回复,我会继续仔细的把剩余课程听完
登录后可查看更多问答,登录/注册
SSM商铺V1.0,解决毕设痛点;SpringBoot商铺V2.0,满足工作刚需
2.0k 47
1.9k 41
2.5k 40
1.8k 39
1.5k 37