Pregunta

estoy usando Hibernar en una aplicación Java para acceder a mi base de datos y funciona bastante bien con MS-SQL y MySQL.Pero algunos de los datos que tengo que mostrar en algunos formularios tienen que provenir de archivos de texto, y por archivos de texto me refiero a archivos legibles por humanos, pueden ser CSV, delimitados por tabulaciones o incluso un par clave-valor por línea, ya que Mis datos son tan simples como esto, pero mi preferencia, por supuesto, son los archivos XML.

Mi pregunta es:¿Puedo usar hibernación para leer esos archivos usando HQL, Query, EntityManager y todos esos recursos que Hibernate me proporciona para acceder a los archivos?¿Qué formato de archivo debo usar y cómo configuro mi archivo persistence.xml para reconocer archivos como tablas?

¿Fue útil?

Solución

Hibernate está escrito contra la API JDBC.Por lo tanto, necesita un controlador JDBC que funcione con el formato de archivo que le interesa.Obviamente, incluso para acceso de sólo lectura, esto no funcionará bien, pero aún así podría ser útil si no es una alta prioridad.En un sistema Windows, puede configurar fuentes de datos ODBC para archivos de texto delimitados, archivos de Excel, etc.Luego puede configurar JdbcOdbcDriver en su aplicación Java para usar esta fuente de datos.

Para la mayoría de las aplicaciones en las que trabajo, no consideraría este enfoque;Usaría un mecanismo de importación/exportación para convertir desde una base de datos real (incluso si es una base de datos en proceso como Berkeley DB o Derby) a archivos de texto.Sí, es un paso adicional, pero podría automatizarse y no es probable que el rendimiento sea mucho peor que intentar usar los archivos de texto directamente (probablemente será mucho mejor, en general), y será más robusto y fácil de desarrollar.

Otros consejos

Se le ocurrió a Google rápidamente

¿Espero que esto pueda servir de inspiración?

Como dijo Erickson, su única esperanza es encontrar un controlador JDBC para esa tarea.tal vez haya xlsql (CSV, XML y controlador Excel) que podrían adaptarse a la tarea.Después de eso, sólo tiene que buscar o escribir el dialecto de Hibernación más simple que se ajuste a su controlador.

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