Граальи создают рутины - PullRequest
2 голосов
/ 12 декабря 2011

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

Я хочу знать лучший способ сделать это, я ищу самый простой способ, использовать плагины или нет. Я нашел похожие ответы на этот же вопрос, но все они не были достаточно ясны, потому что мои знания в Grails / Groovy короткие.

спасибо заранее, RR

1 Ответ

6 голосов
/ 12 декабря 2011

Это легко сделать с помощью плагина Quartz
Для установки добавьте

compile ':quartz:0.4.2'

в разделе плагинов BuildConfig.groovy, затем запустите grails compile или, если вы используете Grails 2.0, запустите grails refresh-dependencies, чтобы установить плагин.
Затем вы можете создать новую работу с grails create-job my.package.My, и вы получите сгенерированный класс MyJob. Внутри метода execute вы можете написать свой код или, что лучше, позвонить в службу, где вы разместите свою логику. Сервис будет автоматически добавлен в вашу работу, поэтому все, что вам нужно сделать, это добавить def myService вверху класса работы (если ваша служба называется MyService)

А для отправки почты есть плагин Mail

...