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

Analysieren Sie CSV und exportieren Sie in Grails in die Mysql-Datenbank

Grails ist ein Bootstrap-Prozess, der ausgeführt wird, wenn Ihre App gestartet wird. Es ist raffiniert; Sie können es so konfigurieren, dass es in verschiedenen Umgebungen verschiedene Dinge tut.

Ein Ansatz besteht darin, Folgendes in Bootstrap zu tun:

1) Lesen Sie die CSV-Datei und erstellen Sie dabei Domain-Objekte.
2) Prüfen Sie für jedes Domain-Objekt, ob es existiert, und wenn nicht, führen Sie youDomainObject.save()

aus

das ist es.

für Code so etwas wie

new File(filePath).splitEachLine(',') {fields ->
    def domainObject = new YouDomainObject(
        id: fields[0].trim(),
        name: fields[1].trim()
    )

    if (domainObject.hasErrors() || domainObject.save(flush: true) == null) {
        log.error("Could not import domainObject  ${domainObject.errors}")
    }

    log.debug("Importing domainObject  ${domainObject.toString()}")
}