В производстве мы используем сценарии 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;"
в качестве строки подключения, но я не уверен, как закрыть / уничтожить / очистить предыдущие экземпляры.