El procesamiento de archivos CSV desde la Web utilizando la base de datos de Java embebido

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

Pregunta

Versión corta: suponiendo que no quiero para mantener los datos por mucho tiempo, ¿cómo puedo crear una base de datos programmaticly en HSQLDB y cargar algunos datos CSV en él para? Mi esquema coincidirá exactamente los archivos y los archivos no tienen nombres de las columnas adecuadas.

Este es un proceso sin vigilancia.

detalles:

Necesito aplicar algunas técnicas simples para SQL tres archivos CSV descargados a través de la web, a continuación, crear algunos dtos que luego pueda usar con un poco de código existente para procesarlos un poco más, y guardarlos a través de REST. Realmente no quiero perder el tiempo con las bases de datos, pero los archivos CSV están unidos por las claves externas, por lo que estaba pensando en usar una base de datos en memoria incorporado para hacer el trabajo, luego tirar todo el lote de distancia.

que tenía en mente una aplicación de línea de comandos que trabaja como esto:

  1. Crear una base de datos fresca en HSQLDB.
  2. Comienza tres HTTP GET en tres hilos utilizando Apache HttpClient.
  3. Importar las CSV en tres HSQLDB Las tablas MEMORY.
  4. Hacer salir SQL.
  5. analizar los resultados en mi existente DTO.
  6. etc ...

Podría utilizar punteros de código y utilidades de votos para los artículos 1 y 3. ¿También hay una alternativa a hsqldb que debería tener en cuenta?

¿Fue útil?

Solución

opencvs . Le ayuda a analizar los archivos CSV.

Otros consejos

La aplicación de línea de comandos a utilizar es el frasco utilidad SQLtool que se suministra con HSQLDB. Su procedimiento se puede realizar de la siguiente manera:

  1. Crear una base de datos HSQLDB fresca en la memoria (sólo tiene que conectar a la base de datos en memoria).
  2. Comienza tres HTTP Obtiene usando Apache HttpClient para obtener los archivos CSV.
  3. Crear tres tablas de texto HSQLDB y establecer el origen de estas tablas para las CSV
  4. Hacer salir SQL. Analizar los resultados en sus dtos existentes.

mesas de Creación de texto en puras tablas en memoria no era posible cuando se hizo la pregunta. Ahora se apoya plenamente en versiones 2.x HSQLDB.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top