Подтвердить что ты не робот

Значение по умолчанию Hibernate hbm2ddl.auto

Что такое значение по умолчанию

hibernate.hbm2ddl.auto

в сопоставлении файлов hibernate cfg

можно удалить

<property name="hibernate.hbm2ddl.auto">update</property>

это сопоставление из файла конфигурации

если я удалю это свойство независимо от того, влияет ли оно на мою БД

???

4b9b3361

Ответ 1

Автоматически проверяет или экспортирует DDL схемы в базу данных при создании SessionFactory. С помощью create-drop схема базы данных будет удалена, если SessionFactory будет закрыта явно.

validate | update | create | create-drop
  • validate- существующая схема
  • update - только обновить вашу схему после создания
  • создавать-создавать схему каждый раз

Ответ 2

Это действительно ответ: не проверяется, не обновляется, нет создания и не происходит сброса при отсутствии настройки из вашей конфигурации. Исходный код hibernate - лучшая документация по Hibernate:

// from org.hibernate.cfg.SettingsFactory line 332 (hibernate-core-3.6.7)      
String autoSchemaExport = properties.getProperty(Environment.HBM2DDL_AUTO);
if ( "validate".equals(autoSchemaExport) ) settings.setAutoValidateSchema(true);
if ( "update".equals(autoSchemaExport) ) settings.setAutoUpdateSchema(true);
if ( "create".equals(autoSchemaExport) ) settings.setAutoCreateSchema(true);
if ( "create-drop".equals(autoSchemaExport) ) {
  settings.setAutoCreateSchema(true);
  settings.setAutoDropSchema(true);
}

Ответ 3

Просто опуская hibernate.hbm2ddl.auto, по умолчанию Hibernate ничего не делает.

Уже спросил в SO. ссылка