以前写JDBC常有SQLEXCEPTION抛出,而HIBERNATE写到现在都没有一个异常抛出,如果出现问题怎么发现?程序怎么能捕获进行处理?HIBERNATE异常处理机制是怎么的?
------解决方法--------------------------------------------------------
如果有异常让你捕获的话,
那么你在继承类的时候就会捕获到。
但是如果没有那就是没有了。
Hibernate可能已经为你做好了。
也可能是你原来写的程序太滥。所以出了很多问题。
------解决方法--------------------------------------------------------
既然是用的hibernate 那么你就应该捕捉hibernate异常,
因为它可以理解为,是对 sqlException进行了包装。
------解决方法--------------------------------------------------------
public class HibernateException extends NestableRuntimeException
所有hibernate的异常全部都继承此异常,可以看到,它是运行期异常,所以你不需要捕捉,但是他是有异常抛出的!
------解决方法--------------------------------------------------------
hibernate 是将SQLEXCEPTION catch后,再throw出自己封装的HibernateException 。
------解决方法--------------------------------------------------------
想一下,捕获了SQLEXCEPTION你能做什么处理?hibernate2的HibernateException是继承Exception的,必须捕获,hibernate3就改成运行时异常了.