2017-12-23 7 views
1

Ich bin neu bei Jhipster und versuche, eine Basisanwendung zu erstellen, die es einem Benutzer ermöglicht, eine CSV-Datei hochzuladen und dann den Inhalt einer Entität anzuzeigen.Einen Dienst in Jhipster verwenden, um eine zweite Entität mit vom Benutzer hochgeladenen CSV-BLOB-Entität zu füllen

Ich versuche herauszufinden, wie eine zweite Entität mit den Daten gefüllt werden kann, die in einem CSV-Blob enthalten sind, der vom Benutzer hochgeladen wird. Ich habe eine Entität erstellt, die es dem Benutzer ermöglicht, eine CSV-Datei hochzuladen und in der Datenbank als BLOB zu speichern, und ich habe auch einen Service mit der Absicht erstellt, eine zweite Entität mit Datensätzen auf Grundlage des Inhalts der CSV-Datei zu füllen wurde hochgeladen.

Wie würde ich über diese gehen? Ich habe OpenCSV in der Vergangenheit benutzt, um CSV-Dateien zu lesen und MySQL-Tabellen über ihren Dateipfad zu füllen, aber ich bin nicht vertraut mit CSV-Dateien, die in der Datenbank als BLOB gespeichert sind.

Antwort

0

Ich implementiert den gleichen Anwendungsfall mit Supercsv, aber ich speichere nicht die CSV in Blob: Im Dienst parse ich das DTO vom Controller und speichert resultierende Entitäten, in den Blob ich die Fehler wenn überhaupt speichern. Es ist ein bisschen missbräuchlich, aber es funktioniert gut und die Entität, um die andere zu erstellen, ist nur eine Möglichkeit, aufzuzeichnen, wie der Upload lief, damit ich die von JHipster generierte Benutzeroberfläche ohne Änderungen wiederverwenden kann.

+0

Vielen Dank. Dies ist hilfreich. – mwq

+0

Würden Sie Ihren Code für die Entität und den Service teilen? – mwq

+0

Nein, es ist keine Open Source, aber es gibt nichts Komplexes: Erzeugen Sie einfach die Entität für den Import mit der DTO-Option und dem Binär-Typ-Feld. Auf diese Weise ist es einfacher, das CSV-Parsing im Service zu isolieren, ohne die Entität und das Repository zu beeinträchtigen. –

Verwandte Themen