场景1:在业务层的指定方法上添加@Before(Tx.class)事务拦截器,并且在controller里通过Enhancer.enhance(业务层类.class)获取增强后的业务层对象进行业务方法调用,结果无法在执行sql语句报错的情况下回滚。
场景2:在业务层的指定方法上使用Db.Tx(new IAtom(){...})进行事务控制,在controller里通过实例化业务层对象然后调用业务方法,结果在执行sql语句报错的情况下顺利回滚。
求解这是什么原因?