I am currently developing a web application that will be connecting to a PostgreSQL database. I am using Java as my language of choice, and Maven as my build manager (web application template).
My data is contained in many pipe delimited files, with each row being an entity in the table (one file for each table). There are between 20-30 tables, which the total number of rows between them reaching into 10+ million.
I am aware there is a csv importer within psql, and I have used it successfully in other cases. However, I am deciding on which software is optimal for moving forward with my application.
On the surface I know the differences, advantages, disadvantages etc between JDBC and Hibernate and have read various other answers comparing them. I decided Hibernate would be worth learning and would make application optimal. However, here lies the CSV import problem. I know Hibernate does not do this out of the box, and JDBC would be a better choice.
Question is, is JDBC the obvious choice in this scenario? I have read when it is preferred over Hibernate and vice versa, but it seems I have some overlap and can't decide for sure.
Does it make the most sense to just go with JDBC since I can use CopyManager and COPY from STDIN to load my CSV data? I was eager to dive into Hibernate as it seems to have solid advantages over JDBC and would be good tech to know as a new developer, but I am new to this and would love some advice!
**** edit for clarification *****
So I will be loading all of the CSV data into the database, then over time I will likely be adding more tables (likely also from CSV) to the database as I decide to. My web app will essentially allow the client to type an SQL query into an input form on the webpage, which will execute on the database that I've created, and return what is desired. I am using tomcat as my server.
Thank you!