H2 createTcpServer() не создает сервер?

Прочитав документацию по H2, я написал это простое приложение для создания базы данных H2 в локальном каталоге:

public static void main(String[] args) throws SQLException {

    String path = "C:/Temp/H2/";
    File fpath = new File(path);

    fpath.mkdirs();
    FileUtils.recursiveDelete(fpath);

    String dbName = "tata";
    String connection = "jdbc:h2:file:" + path + dbName;

    Server server = Server.createTcpServer(connection);

    server.start();
    server.stop();

}

Эта программа работает нормально, но когда я проверяю в целевом каталоге, база данных не там... (я использую выпуск 1.3.161)

1 ответ

Решение

Вам нужно реально получить доступ к базе данных, файлы создаются лениво:

server.start();
DriverManager.getConnection(connection);
server.stop();

Добавленная строка в середине создает tata.h2.db файл, где ожидается (проверено с 1.3.155).

Другие вопросы по тегам