Как перезапустить hbm2ddl между юнит-тестами для базы данных H2? - PullRequest
0 голосов
/ 23 января 2019

В производстве мы используем сценарии SQL (Postgres) для генерации / обновления схемы.В моих модульных тестах я использую configProperties.put("hibernate.hbm2ddl.auto", "create-drop"); для создания схемы для моей базы данных H2.

Чтобы лучше изолировать модульные тесты, я хочу отбросить и заново создать базу данных между тестами.Я могу стереть базу данных H2 с помощью entityManager.createNativeQuery("DROP ALL OBJECTS").executeUpdate();, но как мне тогда перейти в спящий режим, чтобы заново создать схему?

Или есть простой способ просто выключить H2 и создать новый экземпляр?Я могу создать несколько экземпляров, используя "jdbc:h2:mem:"+UUID.randomUUID()+";MODE=DB2;" в качестве строки подключения, но я не уверен, как закрыть / уничтожить / очистить предыдущие экземпляры.

...