首先按照惯例说一句老勤牛逼,接下来提问:
老勤,我在最近项目中发现我们的代码只要出现任意的不满足条件均抛出自定义的异常,包括参数校验、业务操作判断不符合条件都抛出了自定义异常,哪怕之前进行了表数据的修改操作,我记得之前我问过你,代码中抛出了异常,统一异常处理那里如果处理后,就相当于手动catch住了异常,这部分代码造成的数据修改是无法回滚的,但是我们的数据确实回滚了事物,请问下这种情况下是不是有其他的处理方式回滚事物。
还有一种情况,我们这边有多张表操作,但是只允许部分事物回滚,比如我们进行一个操作,然后这个操作抛出了异常,但是我们有需要记录失败的次数,哪个操作中涉及到了多张表操作,我们需要回滚表操作的数据,但是失败次数这个记录的数据不需要回滚,这个场景应该如何设计呢?