Mysql
 sql >> Datenbank >  >> RDS >> Mysql

JSP/Servlets:Wie lade ich eine ZIP-Datei hoch, entpacke sie und entpacke die CSV-Datei

Verwenden Sie ein multipart/form-data Formular mit input type="file" in HTML/JSP, um eine Datei auswählen und hochladen zu können. Verwenden Sie Apache Commons FileUpload im Servlet, um den Anforderungstext analysieren und die hochgeladenen Dateien abrufen zu können. Siehe auch:Wie man Dateien hochlädt in JSP/Servlet?

Verwenden Sie java.util.ZipInputStream um eine Zip-Datei zu lesen und die Zip-Einträge zu extrahieren. Siehe auch:Dateien in Java komprimieren und dekomprimieren .

Zwei Möglichkeiten:

  1. Legen Sie die CSV-Datei irgendwo im Dateisystem der lokalen Festplatte ab, auf die MySQL Zugriff hat, und weisen Sie sie an, sie mit einem LOAD DATA INFILE Abfrage.

  2. Verwenden Sie einen vorhandenen CSV-Parser oder einen erstellen um eine CSV-Datei in eine verwendbare Sammlung von Java-Objekten zu zerlegen, z. List<List<String>> . Dann lernen Sie JDBC und verwenden Sie PreparedStatement um ein INSERT zu erstellen, zu füllen und auszuführen stapelweise abfragen. Siehe auch dieses Mini-Tutorial zu MySQL und JDBC .