Проблема с подключением к H2
Смотрю учебный проект по работе с БД. Основная база там MySQL, а в тестах используется H2, вот помник:
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<scope>test</scope>
</dependency>
jdbc:
driverClassName: org.h2.Driver
pool.size.max: 10
statement.timeout: 0
url: jdbc:h2:mem:mytestdb;DB_CLOSE_ON_EXIT=FALSE
username: sa
password:
Тест проходит, т.е. в базу заносятся данные, проверяются, все ОК.
Вот только когда я запускаю тест в режиме дебага, ставлю точку останова в конце теста и пытаюсь подключиться к БД, то там пусто, нет даже таблиц, не то что данных. Для подключения использую DBever. В строке подключения прописываю jdbc:h2:mem:mytestdb;DB_CLOSE_ON_EXIT=FALSE (пробовал и так jdbc:h2:tcp://localhost:9092/mem:mytestdb). Проверка соединения проход, пишет, что все ок, соединение установлено. В чем может быть проблема? Вопрос по этой теме подключение к БД H2... смотрел, все равно не получается
Ответы (1 шт):
БД H2, он же ранее Hypersonic работает или в режиме in-memory или file, судя по url вашего JDBC jdbc:h2:mem:mytestdb - у вас режим in-memory, вам надо выбрать jdbc:h2:file:mytestdb - тогда будет обеспечена запись в файл и тогда вы сможете увидеть записи и проч.