Обработка CSV-файлов из Интернета с использованием встроенной базы данных Java

StackOverflow https://stackoverflow.com/questions/383260

Вопрос

Короткая версия:предполагая, что я не хочу хранить данные долго, как мне программно создать базу данных в HSQLDB и загрузить в нее некоторые CSV-данные, чтобы?Моя схема будет точно соответствовать файлам, и файлы действительно имеют соответствующие имена столбцов.

Это необслуживаемый процесс.

Подробные сведения:

Мне нужно применить несколько простых методов SQL к трем CSV-файлам, загруженным через Интернет, затем создать несколько DTO, которые я затем могу использовать с некоторым существующим кодом для их дополнительной обработки, и сохранить их через REST.Я действительно не хочу возиться с базами данных, но CSV-файлы связаны внешними ключами, поэтому я подумывал об использовании встроенной базы данных в памяти для выполнения работы, а затем выбросить все это.

Я имел в виду приложение командной строки, работающее следующим образом:

  1. Создайте новую базу данных в HSQLDB.
  2. Запустите три HTTP-запроса в трех потоках, использующих Apache HttpClient.
  3. Импортируйте CSV-файлы в три HSQLDB Таблицы ПАМЯТИ.
  4. Запустите какой-нибудь SQL.
  5. Проанализируйте результаты в моих существующих DTO.
  6. И т.д...

Я мог бы использовать указатели на код и утилиты, полезные для пунктов 1 и 3.Также есть ли альтернатива HSQLDB, которую я должен рассмотреть?

Это было полезно?

Решение

Проверить opencvs - открытые веб - сайты.Это поможет вам анализировать CSV-файлы.

Другие советы

Приложение командной строки для использования - это утилита SQLTool jar, которая поставляется вместе с HSQLDB.Ваша процедура может быть завершена следующим образом:

  1. Создайте новую базу данных HSQLDB в памяти (просто подключитесь к базе данных в памяти).
  2. Запустите три HTTP-запроса, используя Apache HttpClient, чтобы получить CSV-файлы.
  3. Создайте три ТЕКСТОВЫЕ таблицы HSQLDB и задайте ИСТОЧНИКОМ этих таблиц CSV
  4. Запустите какой-нибудь SQL.Проанализируйте результаты в ваших существующих DTO.

Создание текстовых таблиц в чистых таблицах в памяти было невозможно, когда был задан этот вопрос.Теперь он полностью поддерживается в версиях HSQLDB 2.x.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top