我正在编写一个Spring应用程序,似乎当我遇到数据库错误时,有时会ConstraintViolationException抛出Hibernate,有时会抛出Spring DataIntegrityViolationException.是否有理由抛出而不是另一个?他们的意思是不同的吗?
如果您通过进行Hibernate调用HibernateTemplate,那么Spring会将所有Hibernate异常(例如ConstraintViolationException)转换为Spring异常层次结构(例如DataIntegrityViolationException)。如果不使用HibernateTemplate,那么本地的Hibernate异常将通过。两者都是RuntimeExceptions,因此不需要显式的异常处理,因此要看到哪一个并不总是很明显。
| 归档时间: |
|
| 查看次数: |
2989 次 |
| 最近记录: |