Если вы выполняете вызовы Hibernate через HibernateTemplate
, Spring преобразует любые исключения Hibernate (например, ConstraintViolationException
) в иерархию исключений Spring (например, DataIntegrityViolationException
). Если вы не используете HibernateTemplate
, то собственные исключения Hibernate пройдут. И то и другое RuntimeExceptions
, поэтому не требуется явная обработка исключений, поэтому не всегда очевидно, какую именно вы собираетесь увидеть.