В Hibernate 4.x я использовал для генерации и экспорта схемы, как определено в аннотированных объектах, следующим образом (используя Spring для поиска аннотированных объектов в пути класса):
Connection connection =
DriverManager.getConnection("jdbc:h2:mem:jooq-meta-extensions", "sa", "");
Configuration configuration = new Configuration()
.setProperty("hibernate.dialect", "org.hibernate.dialect.H2Dialect");
// [...] adding annotated classes to Configuration here...
configuration.generateSchemaCreationScript(
Dialect.getDialect(configuration.getProperties()));
SchemaExport export = new SchemaExport(configuration, connection);
export.create(true, true);
Это больше не работает в Hibernate 5.0:
-
Configuration.generateSchemaCreationScript()
больше не существует - Конструктор
SchemaExport(configuration, connection)
теперь устарел
Я действительно не нашел никаких очевидных ссылок на это изменение в руководстве по миграции, кроме:
Из конфигурации было удалено несколько методов
Каков правильный способ создания и экспорта базы данных на существующее соединение JDBC с Hibernate 5.0 на основе набора аннотированных объектов? (Чистые решения на основе JPA также прекрасны)
(обратите внимание, что просто удаление вызова generateSchemaCreationScript()
похоже работает, но я бы предпочел убедиться, что это правильно)