Разбор CSV и экспорт в базу данных Mysql в Grails - PullRequest
2 голосов
/ 24 января 2011

Я новичок в Groovy & Grails. Я хочу отправить анализ файла CSV и экспортировать в несколько таблиц базы данных MySQL. Я посмотрел немного кодирования, но для меня, как для новичка, это сбило с толку. Так что кто-нибудь может мне помочь в понимании простого разбора файла CSV и экспорта в базу данных MySQL.

Спасибо Сон

Ответы [ 2 ]

11 голосов
/ 25 января 2011

Grails процесс начальной загрузки, который запускается при каждом запуске вашего приложения. Его изящный; Вы можете настроить его, чтобы делать разные вещи в разных средах.

Один из подходов заключается в следующем: при загрузке выполните следующие действия:

1) Прочитайте файл csv, создавая объекты домена по ходу работы.
2) Для каждого объекта домена проверьте, существует ли он, а если нет, то doDomainObject.save ()

вот и все.

для кода, что-то вроде

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()}")
}
0 голосов
/ 27 января 2011

Поскольку Groovy интегрируется с Java, вы также можете использовать библиотеку Java с именем opencsv , чтобы читать CSV, если вам удобнее.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...