程序进入[i][b]自定义异常[/b][/i]里,事务是不会回滚的,要想抛出异常请在处理完result过后[b]throw new runtimeException[/b]。
PS:hibernate里面用了大量异常作流程控制。如果它不这样做,恐怕就要增加不少数据库访问量,这样在异常方面造成的效率影响没有了,却增加了网络通讯和数据库访问量,显然是得不偿失的。因此,减少数据库访问量、网络数据流量和网络访问次数恐怕是使用异常做程序控制的最大理由。
PS:hibernate里面用了大量异常作流程控制。如果它不这样做,恐怕就要增加不少数据库访问量,这样在异常方面造成的效率影响没有了,却增加了网络通讯和数据库访问量,显然是得不偿失的。因此,减少数据库访问量、网络数据流量和网络访问次数恐怕是使用异常做程序控制的最大理由。