Как подключиться к HSQLDB в памяти в тестах Spring Boot, чтобы сделать запрос - PullRequest
1 голос
/ 04 августа 2020

У меня есть приложение Spring Boot с mysql db, но при запуске тестов используется HSQLDB . Можно ли подключиться к этой базе данных в памяти для выполнения запроса? Что мне нужно изменить в тестах / приложении для его запуска? Я уже пытался запустить менеджер базы данных h sql и подключиться к этой базе данных, но он кажется пустым, но на самом деле он не пустой, потому что в приложении я отлаживаю код и читаю данные из этой базы данных.

1 Ответ

0 голосов
/ 06 августа 2020

У вас есть два варианта.

Один из вариантов - запустить сервер Hyper SQL (HSQLDB) весной. Этот вариант обсуждается здесь, в ответе Как запустить HSQLDB в режиме сервера из приложения загрузки Spring Затем вы запускаете Hyper SQL DatabaseManagerSwing в отдельном процессе Java и подключаетесь к серверу Hyper SQL с URL-адресом: jdbc:hsqldb:hsql://localhost/testdb.

Альтернативный вариант - запустить Hyper SQL DatabaseManagreSwing весной. Вы можете изменить шаблон компонента, указанный для Сервера, и запустить org.hsqldb.util.DatabaseManagerSwing вместо Сервера. В этом случае DatabaseManager должен подключиться к URL-адресу: jdbc:hsqldb:mem:testdb.

Обратите внимание, что в обоих случаях вам необходимо указать URL-адрес jdbc:hsqldb:mem:testdb в качестве источника данных Spring.

...