在insert*方法中未未抛出异常,spring不知道发生了异常,
未抛出的原因是:在catch中使用了return语句,导致异常无法抛出insert*方法之外。
一般是绝对禁止在catch 和finally中使用return语句的。主要是会丢失掉抛出的异常。
spring是靠AOP的方法拦截异常去判断是否需要事务回滚或提交的。你自己把异常给catch了,又不往上抛出 别人怎么知道你的方法是否执行正常呢
摘自网络
在insert*方法中未未抛出异常,spring不知道发生了异常,
未抛出的原因是:在catch中使用了return语句,导致异常无法抛出insert*方法之外。
一般是绝对禁止在catch 和finally中使用return语句的。主要是会丢失掉抛出的异常。
spring是靠AOP的方法拦截异常去判断是否需要事务回滚或提交的。你自己把异常给catch了,又不往上抛出 别人怎么知道你的方法是否执行正常呢
摘自网络