Mysql
 sql >> Base de données >  >> RDS >> Mysql

Analyser CSV et exporter dans la base de données Mysql dans Grails

Grails un processus d'amorçage qui s'exécute chaque fois que votre application démarre. C'est chouette ; vous pouvez le configurer pour faire différentes choses dans différents environnements.

Une approche consiste à effectuer les opérations suivantes dans bootstrap :

1) Lisez le fichier csv, en créant des objets de domaine au fur et à mesure.
2) Pour chaque objet de domaine, vérifiez s'il existe, et si ce n'est pas le cas, faites-leDomainObject.save()

c'est ça.

pour le code, quelque chose comme

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()}")
}