Как проверить схему с Hibernate (все ошибки) - PullRequest
4 голосов
/ 21 июня 2011

Я использую Hibernate 3.2.6 с файлами hbm. При использовании опции hibernate.hbm2ddl.auto = validate я получаю только первую ошибку проверки. Есть ли способ показать все ошибки в схеме?

Пример: Файл City.hbm.xml имеет свойство с именем name. Когда я удаляю этот столбец из таблицы, я получаю: Отсутствующий столбец: имя в nfe.dbo.city Пока все хорошо. Но файл City.hbm.xml имеет другое свойство, называемое состоянием. Когда я удаляю столбец 'state' из таблицы, я получаю ту же ошибку (отсутствует столбец: name в nfe.dbo.city) и хотел бы получить все ошибки в схеме (не только в первой).

Ответы [ 2 ]

3 голосов
/ 21 июня 2011

Нет способа заставить его показать все ошибки в схеме из-за того, как написан код. Если вы прочитаете код для Configuration.validateSchema () , вы увидите, что он вызывает HibernateException при первой обнаруженной ошибке и, таким образом, завершает процесс проверки.

2 голосов
/ 12 февраля 2014

Я только что создал собственный класс конфигурации, чтобы собрать все нарушения схемы вместе.Размещение gist , может быть полезно кому-то еще:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...