Перенос данных между несколькими базами данных с помощью Spring-Boot - PullRequest
0 голосов
/ 16 сентября 2018

Я пытаюсь создать приложение, в котором данные будут перенесены из одной базы данных в другую (будет использоваться несколько баз данных). Пользователь может выбрать таблицу во время выполнения и выдвинуть ее на целевую базу данных. Я использую Spring-boot, данные JPA и пытаюсь использовать Flyway. Моя проблема заключается в том, как прочитать полную схему из исходной базы данных, поскольку пользователь может выбрать исходную базу данных во время выполнения?

Sumit

1 Ответ

0 голосов
/ 17 сентября 2018

Вы можете получить объект MetaData из соединения JDBC и использовать его для получения всех видов информации о базе данных, например, списка таблиц.

См. Следующий пример, который я взял из учебное пособие .

databaseMetaData = connection.getMetaData();
ResultSet resultSet = databaseMetaData.getTables(null, null, null, new String[]{"TABLE"});

System.out.println("Printing TABLE_TYPE \"TABLE\" ");
System.out.println("----------------------------------");

while(resultSet.next())
{
    System.out.println(resultSet.getString("TABLE_NAME"));
}

Примечание: JPA, скорее всего, не является подходящим инструментом для работы.Попробуйте вместо этого использовать пружины JdbcTemplate.

...